DocViewer

Páginas

www.xlibros.com
ANÁLISIS Y DISEÑODE SISTEMASO C T A V A E D I C I Ó NKENNETH E. KENDALLJULIE E. KENDALLRutgers UniversitySchool of Business–CamdenCamden, New JerseyTRADUCTORAlfonso Vidal Romero ElizondoIngeniero en Sistemas ComputacionalesTecnológico de Monterrey - MonterreyREVISORES TÉCNICOSHumberto Cárdenas AnayaDepartamento de Tecnologíasde Información y ComputaciónDivisión de Ingeniería y ArquitecturaITESM - Campus Estado de MéxicoÓscar Díaz AlcántaraUniversidad Anáhuac del SurPrentice Hallwww.xlibros.com
Authorized translation from the English language edition entitled Systems Analysis and Design, 8th edition, by Kenneth Kendall & Julie Kendall,published by Pearson Education, Inc., publishing as PRENTICE HALL, INC., Copyright © 2011. All rights reserved.ISBN 9780136089162.Traducción autorizada de la edición en idioma inglés titulada Systems Analysis and Design, 8ª edición, por Kenneth Kendall y Julie Kendall,publicada por Pearson Education, Inc., publicada como PRENTICE HALL, INC., Copyright © 2011. Todos los derechos reservados.Esta edición en español es la única autorizada.Edición en españolEditor: Luis Miguel Cruz Castilloe-mail: luis.cruz@pearsoned.comEditor de desarrollo: Bernardino Gutiérrez HernándezSupervisor de producción: Rodrigo Romero VillalobosOCTAVA EDICIÓN, 2011D.R. © 2011 por Pearson Educación de México, S.A. de C.V.Atlacomulco 500-5o. pisoCol. Industrial Atoto53519, Naucalpan de Juárez, Estado de MéxicoCámara Nacional de la Industria Editorial Mexicana. Reg. núm. 1031.Prentice Hall es una marca registrada de Pearson Educación de México, S.A. de C.V.Reservados todos los derechos. Ni la totalidad ni parte de esta publicación pueden reproducirse, registrarse o transmitirse, por un sistema de recu-peración de información, en ninguna forma ni por ningún medio, sea electrónico, mecánico, fotoquímico, magnético o electroóptico, por fotocopia,grabación o cualquier otro, sin permiso previo por escrito del editor.El préstamo, alquiler o cualquier otra forma de cesión de uso de este ejemplar requerirá también la autorización del editor o de sus representantes.ISBN VERSIÓN IMPRESA: 978-607-32-0577-1ISBN VERSIÓN E-BOOK: 978-607-32-0578-8ISBN E-CHAPTER: 978-607-32-0579-5PRIMERA IMPRESIÓNImpreso en México. Printed in Mexico.1 2 3 4 5 6 7 8 9 0 - 13 12 11 10Datos de catalogación bibliográficaKENDALL, KENNETH E. Y KENDALL, JULIE E.Páginas: 600PEARSON EDUCACIÓN, México, 2011ISBN: 978-607-32-0577-1Área: ComputaciónFormato: 21  27 cmAnálisis y diseño de sistemas.Octava ediciónA la memoria de Julia A. Kendall y de Edward J. Kendall,cuyos ejemplos de vida y trabajo conjunto siempre nos han inspirado.www.pearsoneducacion.net ISBN: 978-607-32-0577-1Prentice Halles una marca dewww.xlibros.com
MARCAS REGISTRADASDE LAS EMPRESASApple y Macintosh son marcas registradas de Apple Computer. 1Password es marca registrada de Agile WebSolutions. Bento es marca registrada de FileMaker. Dragon NaturallySpeaking es marca registrada de Nuance.Dreamweaver, Adobe Flash y FormFlow son marcas registradas de Adobe Systems Incorporated. DEVONagent yDEVONthink Professional Office son marcas registradas de DEVONtechnologies. Firefox es marca registrada deMozilla Foundation. Freeway Pro es marca registrada de Softpress Systems. HyperCase es marca registradade Raymond J. Barnes, Richard L. Baskerville, Julie E. Kendall y Kenneth E. Kendall. Microsoft Windows,Microsoft Access, Microsoft Word, Microsoft PowerPoint, Microsoft Project, Microsoft Excel y Microsoft Visioson marcas registradas de Microsoft Corporation. OmniFocus es marca registrada de The Omni Group. OmniGraffley OmniPlan son marcas registradas de The Omni Group. OmniPage es marca registrada de Nuance. Palm es marcaregistrada de Palm, Inc. ProModel y Service Model son marcas registradas de ProModel Corporation. Things esmarca registrada de Cultured Code. VMware Fusion es marca registrada de VMware. Visible Analyst es marcaregistrada de Visible Systems Corporation. WinFax Pro y Norton Internet Security son marcas registradas deSymantec. Yojimbo es marca registrada de Bare Bones Software. Los demás productos y nombres de empresas quese mencionen en este libro pueden ser marcas registradas de sus respectivos propietarios. Las empresas, nombresy/o datos utilizados en las pantallas y resultados de ejemplo son ficticios, a menos que se indique lo contrario.vwww.xlibros.com
RESUMENDE CONTENIDOPARTE I FUNDAMENTOS DEL ANÁLISIS DE SISTEMAS1 SISTEMAS, ROLES Y METODOLOGÍAS DE DESARROLLO 12 COMPRENSIÓN Y MODELADO DE LOS SISTEMAS ORGANIZACIONALES 243 ADMINISTRACIÓN DE PROYECTOS 56PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓN4 RECOPILACIÓN DE INFORMACIÓN: MÉTODOS INTERACTIVOS 1035 RECOPILACIÓN DE INFORMACIÓN: MÉTODOS DISCRETOS 1316 MODELADO ÁGIL Y PROTOTIPOS 155PARTE III EL PROCESO DE ANÁLISIS7 USO DE DIAGRAMAS DE FLUJO DE DATOS 1938 ANÁLISIS DE SISTEMAS MEDIANTE EL USO DE DICCIONARIOS DE DATOS 2289 ESPECIFICACIONES DE LOS PROCESOS Y DECISIONES ESTRUCTURADAS 25910 ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 281PARTE IV LOS FUNDAMENTOS DEL DISEÑO11 DISEÑO DE UNA SALIDA EFECTIVA 32912 DISEÑO DE UNA ENTRADA EFECTIVA 37113 DISEÑO DE BASES DE DATOS 40314 INTERACCIÓN HUMANO-COMPUTADORA 441PARTE V ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD15 DISEÑO DE PROCEDIMIENTOS PRECISOS DE ENTRADA DE DATOS 48516 ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD 515GLOSARIO 557ACRÓNIMOS 565ÍNDICE 566viwww.xlibros.com
CONTENIDOPARTE I FUNDAMENTOS DEL ANÁLISIS DE SISTEMAS 11 SISTEMAS, ROLES Y METODOLOGÍAS DE DESARROLLO 1Tipos de sistemas 2Sistemas de procesamiento de transacciones 2 / Sistemas de automatización de oficinas y sistemasde trabajo de conocimiento 2 / Sistemas de información administrativa 3 / Sistemas de soporte dedecisiones 3 / Inteligencia artificial y sistemas expertos 3 / Sistemas de soporte de decisiones en grupo ysistemas de trabajo colaborativo asistido por computadora 3 / Sistemas de soporte para ejecutivos 4Integración de las tecnologías en sistemas 4Las aplicaciones de comercio electrónico y los sistemas Web 4 / Sistemas empresariales 5 / Sistemas paradispositivos inalámbricos y móviles 5 / Software de código fuente abierto 5Necesidad del análisis y diseño de sistemas 6Roles del analista de sistemas 6El analista de sistemas como consultor 6 / El analista de sistemas como experto de soporte 6 / El analista desistemas como agente de cambio 7Oportunidad de consultoría 1.1 Contratación saludable: se solicita ayuda para el comercio electrónico 7Cualidades del analista de sistemas 8El ciclo de vida del desarrollo de sistemas 8Incorporación de las consideraciones de la interacción humano-computadora 9 / Identificación de los problemas,oportunidades y objetivos 9 / Determinación de los requerimientos de información del factor humano 10 /Análisis de las necesidades del sistema 10 / Diseño del sistema recomendado 11 / Desarrollo y documentacióndel software 11 / Prueba y mantenimiento del sistema 11 / Implementación y evaluación del sistema 11ATRACTIVO DE LA MAC 12El impacto del mantenimiento 12Uso de Herramientas Case 14La metodología ágil 14Proceso de desarrollo para un proyecto ágil 15Análisis y diseño de sistemas orientado a objetos 17Cómo elegir qué método de desarrollo de sistemas usar 19RESUMEN 19EXPERIENCIA DE HYPERCASE® 1 20PALABRAS CLAVE Y FRASES 21PREGUNTAS DE REPASO 21BIBLIOGRAFÍA SELECCIONADA 21EPISODIO 1 CASO DE LA CPU Se abre el caso 23viiwww.xlibros.com
2 COMPRENSIÓN Y MODELADO DE LOS SISTEMAS ORGANIZACIONALES 24Las organizaciones como sistemas 24Capacidad de interrelación e interdependencia de los sistemas 25Oportunidad de consultoría 2.1 La E de la vitamina E significa E-commerce (comercio electrónico) 26Organizaciones y equipos virtuales 26 / Una perspectiva de sistemas 27 / Sistemas empresariales:considerar a la organización como un sistema 28Descripción gráfica de los sistemas 29Los sistemas y el diagrama de flujo de datos a nivel de contexto 29 / Los sistemas y el modelode entidad-relación 30ATRACTIVO DE LA MAC 35Modelado de casos de uso 35Símbolos de los casos de uso 36 / Relaciones de los casos de uso 36 / Desarrollo del alcancedel sistema 38 / Desarrollo de diagramas de casos de uso 38 / Desarrollo de escenarios decasos de uso 38 / Niveles de los casos de uso 39 / Creación de las descripciones de los casosde uso 43 / Por qué son útiles los diagramas de casos de uso 43Niveles de administración 43Oportunidad de consultoría 2.2 Donde hay carbón hay una copia 44Implicaciones para el desarrollo de sistemas de información 45Cultura organizacional 45Oportunidad de consultoría 2.3 El poder de la pirámide 46RESUMEN 46EXPERIENCIA DE HYPERCASE® 2 47PALABRAS CLAVE Y FRASES 48PREGUNTAS DE REPASO 48PROBLEMAS 48PROYECTOS EN GRUPO 49BIBLIOGRAFÍA SELECCIONADA 50EPISODIO 2 CASO DE LA CPU Descripción gráfica de las relaciones 513 ADMINISTRACIÓN DE PROYECTOS 56Iniciación del proyecto 56Problemas en la organización 57 / Definición del problema 57Oportunidad de consultoría 3.1 El sonido más dulce que haya sorbido 58Selección de proyectos 61Determinación de la viabilidad 62Determinar si es posible o no 62Determinación de las necesidades de hardware y software 63Hacer un inventario del hardware computacional 64 / Estimación de las cargas de trabajo 64 / Evaluacióndel hardware computacional 65 / Adquisición del equipo computacional 66 / Evaluación de software 68OPORTUNIDAD DE CONSULTORÍA 3.2 Veni, Vidi, Vendi (Vine, vi y vendí) 70Identificación, pronóstico y comparación de los costos y beneficios 72Pronósticos 72 / Identificación de los beneficios y costos 72Oportunidad de consultoría 3.3 Vamos a ver a los magos 73Comparación de los costos y beneficios 74Planeación y control de actividades 77Estimación del tiempo requerido 77viii CONTENIDOwww.xlibros.com
Oportunidad de consultoría 3.4 Alimento para el pensamiento 78Uso de gráficos de Gantt para programar proyectos 79 / Uso de diagramas PERT 80Administración del proyecto 82Cómo lidiar con la complejidad del sistema 82ATRACTIVO DE LA MAC 83Administración de las actividades de análisis y diseño 83Ensamblar un equipo 83EXPERIENCIA DE HYPERCASE® 3.1 84Estrategias de comunicación para administrar equipos 84 / Establecer objetivos deproductividad del proyecto 85Oportunidad de consultoría 3.5 Cuidar los objetivos 85Motivación de los miembros del equipo del proyecto 86 / Administración de proyectos de comercioelectrónico 86 / Creación de los estatutos del proyecto 87 / Cómo evitar fracasos en los proyectos 87La propuesta de sistemas 88Organización de la propuesta de sistemas 88 / Uso de figuras para una comunicación efectiva 89RESUMEN 91EXPERIENCIA DE HYPERCASE® 3.2 92PALABRAS CLAVE Y FRASES 93PREGUNTAS DE REPASO 93PROBLEMAS 94PROYECTOS EN GRUPO 98BIBLIOGRAFÍA SELECCIONADA 98EPISODIO 3 CASO DE LA CPU Llegar a conocerte 100PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓN 1034 RECOPILACIÓN DE INFORMACIÓN: MÉTODOS INTERACTIVOS 103Entrevistas 103Los cinco pasos para la preparación de una entrevista 104 / Tipos de preguntas 105Ordenar las preguntas en una secuencia lógica 107Oportunidad de consultoría 4.1 Fortalezca sus tipos de preguntas 108Cómo escribir el informe de la entrevista 109Oportunidad de consultoría 4.2 Un vistazo a la superficie 110Diseño de aplicación conjunta 111Condiciones que respaldan el uso de JAD 111 / ¿Quién está involucrado? 111EXPERIENCIA DE HYPERCASE® 4.1 112Ubicación de las reuniones JAD 112Oportunidad de consultoría 4.3 Analista de sistemas, supongo 113Obtención de un análisis estructurado de las actividades del proyecto 113 / Beneficios potenciales al usarJAD en vez de las entrevistas tradicionales 113 / Desventajas potenciales de JAD 113Uso de cuestionarios 114Planeación del uso de cuestionarios 114 / Escribir las preguntas 115 / Uso de escalas en los cuestionarios 118Diseño de los cuestionarios 119Oportunidad de consultoría 4.4 El cuestionario insoportable 120Oportunidad de consultoría 4.5 Orden en las cortes 121Administración de los cuestionarios 122RESUMEN 122CONTENIDO ixwww.xlibros.com
EXPERIENCIA DE HYPERCASE® 4.2 123PALABRAS Y FRASES CLAVE 123PREGUNTAS DE REPASO 124PROBLEMAS 124PROYECTOS EN GRUPO 127BIBLIOGRAFÍA SELECCIONADA 127EPISODIO 4 CASO DE LA CPU Escucharé ahora, pregunto después 1285 RECOPILACIÓN DE INFORMACIÓN: MÉTODOS DISCRETOS 131Muestreo 131La necesidad del muestreo 132 / Diseño del muestreo 132 / La decisión sobre el tamaño de las muestras 134Oportunidad de consultoría 5.1 A la caza de una muestra 135Investigación 136Análisis de documentos cuantitativos 136Oportunidad de consultoría 5.2 Una rosa con otro nombre... o Calidad mejor que cantidad 137Análisis de los documentos cualitativos 140EXPERIENCIA DE HYPERCASE® 5.1 141Observación del comportamiento del encargado de tomar decisiones 142Observación de las actividades de toma de decisiones de un gerente común 142Observación del entorno físico 142Observación estructurada del entorno (STROBE) 142Oportunidad de consultoría 5.3 No confíes en su autoestima o no todo se refleja en un espejo 145Aplicación del método STROBE 146ATRACTIVO DE LA MAC 147RESUMEN 148EXPERIENCIA DE HYPERCASE® 5.2 149PALABRAS CLAVE Y FRASES 150PREGUNTAS DE REPASO 150PROBLEMAS 150PROYECTOS EN GRUPO 152BIBLIOGRAFÍA SELECCIONADA 153EPISODIO 5 CASO DE LA CPU Ver es creer 1546 MODELADO ÁGIL Y PROTOTIPOS 155Prototipos 156Tipos de prototipos 156 / Uso de prototipos como alternativa para el SDLC 157Desarrollo de un prototipo 158Lineamientos para desarrollar un prototipo 159Oportunidad de consultoría 6.1 Los prototipos, ¿son los reyes? 159Oportunidad de consultoría 6.2 Despejando el camino para los vínculos con los clientes 160Desventajas de los prototipos 160 / Ventajas de los prototipos 161 / Creación de prototipos mediantesoftware COTS 161Oportunidad de consultoría 6.3 Incubar un pez 161Oportunidad de consultoría 6.4 Este prototipo está todo mojado 162El papel que desempeñan los usuarios en los prototipos 162x CONTENIDOwww.xlibros.com
Desarrollo rápido de aplicaciones 163Fases de RAD 164 / Comparación entre RAD y el SDLC 165Modelado ágil 166Valores y principios del modelado ágil 166 / Actividades, recursos y prácticas del modelado ágil 168 / Elproceso de desarrollo ágil 171ATRACTIVO DE LA MAC 173Lecciones aprendidas a partir del modelado ágil 175Comparación entre el modelado ágil y los métodos estructurados 176Mejorar la eficiencia en el trabajo del conocimiento: comparación entre SDLC y el método ágil 177 /Riesgos inherentes a la innovación organizacional 179RESUMEN 181EXPERIENCIA DE HYPERCASE ® 6 182PALABRAS CLAVE Y FRASES 183PREGUNTAS DE REPASO 183PROBLEMAS 183PROYECTOS EN GRUPO 185BIBLIOGRAFÍA SELECCIONADA 185EPISODIO 6 CASO DE LA CPU Tiempo de reacción 186PARTE III EL PROCESO DE ANÁLISIS 1937 USO DE DIAGRAMAS DE FLUJO DE DATOS 193La metodología del flujo de datos para determinar los requerimientos humanos 193Ventajas de la metodología del flujo de datos 193 / Convenciones usadas en los diagramasde flujo de datos 194Cómo desarrollar diagramas de flujos de datos 195Creación del diagrama de contexto 195 / Dibujo del Diagrama 0 (el siguiente nivel) 196 / Creación dediagramas hijos (niveles más detallados) 198 / Comprobación de errores en los diagramas 198Diagramas de flujo de datos lógicos y físicos 200Cómo desarrollar diagramas de flujo de datos lógicos 202 / Cómo desarrollar diagramas de flujo de datosfísicos 203 / Cómo particionar los diagramas de flujo de datos 206Ejemplo de un diagrama de flujo de datos 207Desarrollar la lista de actividades de negocios 207 / Crear un diagrama de flujo de datos a nivel decontexto 208 / Dibujo del Diagrama 0 210 / Crear un diagrama hijo 211 / Crear un diagrama de flujo dedatos físico a partir del DFD lógico 212 / Cómo particionar el DFD físico 213Particionamiento de sitios web 213OPORTUNIDAD DE CONSULTORÍA 7.1 No hay negocio como el negocio de los flujos 216Comunicación mediante el uso de diagramas de flujo de datos 217RESUMEN 217EXPERIENCIA DE HYPERCASE® 7 218PALABRAS CLAVE Y FRASES 218PREGUNTAS DE REPASO 219PROBLEMAS 219PROYECTOS EN GRUPO 221BIBLIOGRAFÍA SELECCIONADA 221EPISODIO 7 CASO DE LA CPU Siguiendo el flujo 222CONTENIDO xiwww.xlibros.com
8 ANÁLISIS DE SISTEMAS MEDIANTE EL USO DE DICCIONARIOS DE DATOS 228El diccionario de datos 228Necesidad de comprender el diccionario de datos 229El repositorio de datos 229Definición de los flujos de datos 230 / Descripción de las estructuras de datos 231 / Estructuras de datoslógicas y físicas 233 / Elementos de datos 234 / Almacenes de datos 236Creación del diccionario de datos 238Análisis de la entrada y la salida 239Oportunidad de consultoría 8.1 ¿Deseas triunfar en el teatro? ¡Mejora tu dicción(ario)! 240Desarrollo de almacenes de datos 241Uso del diccionario de datos 242Uso de diccionarios de datos para crear XML 243 / Definiciones de tipo de documento de XML 244 /Esquemas de XML 246EXPERIENCIA DE HYPERCASE® 8 247RESUMEN 248PALABRAS CLAVE Y FRASES 248PREGUNTAS DE REPASO 248PROBLEMAS 249PROYECTOS EN GRUPO 251BIBLIOGRAFÍA SELECCIONADA 251EPISODIO 8 Caso de la CPU Definir lo que queremos decir 2529 ESPECIFICACIONES DE LOS PROCESOS Y DECISIONES ESTRUCTURADAS 259Generalidades de las especificaciones de los procesos 259Formato de especificación de proceso 260Español estructurado 261Cómo escribir español estructurado 261Oportunidad de consultoría 9.1 Kit Chen Kaboodle, Inc. 263Oportunidad de consultoría 9.2 Estructura para amasar 264Diccionario de datos y especificaciones de procesos 265Tablas de decisión 266Desarrollar tablas de decisión 267Oportunidad de consultoría 9.3 Ahorrar un centavo en Citron Car Rental 269Verificar la integridad y precisión 270Árboles de decisión 271Oportunidad de consultoría 9.4 Un árbol gratis 272Dibujar árboles de decisión 272Cómo elegir una técnica de análisis de decisiones estructuradas 273RESUMEN 273EXPERIENCIA DE HYPERCASE® 9 274PALABRAS CLAVE Y FRASES 274PREGUNTAS DE REPASO 274PROBLEMAS 274PROYECTOS EN GRUPO 276BIBLIOGRAFÍA SELECCIONADA 276EPISODIO 9 CASO DE LA CPU Presentar una decisión 277xii CONTENIDOwww.xlibros.com
10 ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 281Conceptos orientados a objetos 282Objetos 282 / Clases 282 / Herencia 283Oportunidad de consultoría 10.1 Alrededor del mundo en 80 objetos 284Tarjetas CRC y pensamiento en objetos 284Interacción durante una sesión CRC 284Conceptos y diagramas del lenguaje unificado de modelado (UML) 286Modelado de casos de uso 287Diagramas de actividad 290Creación de diagramas de actividad 292Oportunidad de consultoría 10.2 Reciclando el entorno de programación 293Entradas en el repositorio para un diagrama de actividad 294Diagramas de secuencia y de comunicación 294Diagramas de secuencia 294 / Diagramas de comunicación 296Diagramas de clases 297Sobrecarga de métodos 298 / Tipos de clases 299 / Definición de mensajes y métodos 300Cómo mejorar los diagramas de secuencia 300Un ejemplo de clase para Web 300 / Las capas de presentación, negocios y persistenciaen los diagramas de secuencia 302Cómo mejorar los diagramas de clases 303Relaciones 304 / Diagramas de generalización/especialización (gen/spec) 306Diagramas de estados 309Ejemplo de una transición de estado 310Paquetes y otros artefactos de UML 311Oportunidad de consultoría 10.3 Desarrollo de un sistema fino cuyo plazo de entrega se venció hacemucho: uso del análisis orientado a objetos para el Sistema de la biblioteca pública Ruminski 313Ponga el UML a trabajar 313Oportunidad de consultoría 10.4 C-Shore 315La importancia de usar UML para el modelado 315RESUMEN 316EXPERIENCIA DE HYPERCASE® 10 317PALABRAS CLAVE Y FRASES 317PREGUNTAS DE REPASO 318PROBLEMAS 318BIBLIOGRAFÍA SELECCIONADA 319EPISODIO 10 CASO DE LA CPU Objetos con clase 320PARTE IV LOS FUNDAMENTOS DEL DISEÑO 32911 DISEÑO DE UNA SALIDA EFECTIVA 329Objetivos de diseño de la salida 329Diseñar la salida para servir al propósito previsto 329 / Diseñar la salida para ajustarlaal usuario 330 / Entregar la cantidad apropiada de salida 330 / Asegurarse que la salidaesté donde se necesite 330 / Proveer la salida en forma oportuna 330 / Elegir el métodode salida correcto 330CONTENIDO xiiiwww.xlibros.com
Relacionar el contenido de la salida con el método de salida 330Tecnologías de salida 331Oportunidad de consultoría 11.1 ¿Tu jaula o la mía? 335Factores a considerar al elegir la tecnología de salida 336Oportunidad de consultoría 11.2 Una vía correcta, una equivocada y una vía de metro 339Comprender cómo afecta la predisposición en la salida a los usuarios 340Cómo reconocer la predisposición en la forma en que se utiliza la salida 340 / Cómo evitar la predisposiciónal diseñar la salida 341 / Cómo diseñar la salida impresa 341 / Lineamientos para el diseño de informesimpresos 341Oportunidad de consultoría 11.3 ¿Debería prohibirse esta gráfica? 342Cómo diseñar salida para pantallas 344Lineamientos para el diseño de pantallas 344 / Uso de salida gráfica en el diseño de pantallas 345 /Tableros de control 346 / Widgets y gadgets: modificación de la metáfora del escritorio 347Oportunidad de consultoría 11.4 ¿Es tu trabajo aburrido? 348Diseño de un sitio web 348Lineamientos generales para diseñar sitios Web 349 / Mantenimiento de los sitios Web 356 / Creación deblogs (Weblogs) 357ATRACTIVO DE LA MAC 351Oportunidad de consultoría 11.5 Un día en el campo 356Producción de la salida y XML 357Ajax 358EXPERIENCIA DE HYPERCASE® 11 360RESUMEN 360PALABRAS CLAVE Y FRASES 361PREGUNTAS DE REPASO 361PROBLEMAS 362PROYECTOS EN GRUPO 365BIBLIOGRAFÍA SELECCIONADA 365EPISODIO 11 CASO DE LA CPU Elaborar informes con base en las salidas 36612 DISEÑO DE UNA ENTRADA EFECTIVA 371Diseño de buenos formularios 371Hacer que los formularios sean fáciles de llenar 372 / Cumplir con el propósito previsto 374 / Asegurar quese llenen en forma precisa 375 / Mantener los formularios atractivos 375 / Cómo controlar los formulariosde las empresas 376Diseño de buenos formularios web y de pantalla 376Mantener la pantalla simple 376Oportunidad de consultoría 12.1 Este formulario puede ser dañino para su salud 377Mantener la pantalla consistente 378 / Facilitar el movimiento 378 / Diseñar una pantalla atractiva yagradable 378 / Utilice iconos en el diseño de las pantallas 378 / Diseño de la interfaz gráfica de usuario 379Oportunidad de consultoría 12.2 Tener todo junto no siempre es lo mejor 379Controles y valores de los formularios 381 / Campos ocultos 382 / Tablas de respuestaa eventos 382 / Páginas Web dinámicas 383 / Páginas Web tridimensionales 385 / Ajax (JavaScriptasíncrono y XML) 387 / Uso de color en el diseño de pantallas 389Diseño de páginas de Intranet e Internet 389Oportunidad de consultoría 12.3 Juego de máscaras 390ATRACTIVO DE LA MAC 392xiv CONTENIDOwww.xlibros.com
RESUMEN 392EXPERIENCIA DE HYPERCASE® 12 393PALABRAS CLAVE Y FRASES 394PREGUNTAS DE REPASO 394PROBLEMAS 395PROYECTOS EN GRUPO 397BIBLIOGRAFÍA SELECCIONADA 398EPISODIO 12 CASO DE LA CPU Formando pantallas y visualizando formularios 39913 DISEÑO DE BASES DE DATOS 403Bases de datos 403Oportunidad de consultoría 13.1 Enganche su carrito de limpieza a una estrella 404Conceptos de datos 404Realidad, datos y metadatos 405 / Archivos 410 / Bases de datos relacionales 411Normalización 413Los tres pasos de la normalización 413 / Un ejemplo de normalización 414 / Uso del diagramaentidad-relación para determinar las claves de los registros 421 / Relación de uno a muchos 422 /Relación de muchos a muchos 423Lineamientos para el diseño de relaciones de archivos maestros/bases de datos 424Restricciones de integridad 424ATRACTIVO DE LA MAC 425Anomalías 425Uso de la base de datos 426Pasos para recuperar y presentar los datos 426Desnormalización 426Almacenes corporativos de datos 429Procesamiento analítico en línea 429 / Minería de datos 430Oportunidad de consultoría 13.2 Almacenamiento de minerales para la salud, minería de datos 430Oportunidad de consultoría 13.3 Pérdida de prospectos 431RESUMEN 432EXPERIENCIA DE HYPERCASE® 13 433PALABRAS CLAVE Y FRASES 433PREGUNTAS DE REPASO 434PROBLEMAS 434PROYECTO EN GRUPO 436BIBLIOGRAFÍA SELECCIONADA 436EPISODIO 13 CASO DE LA CPU De vuelta a los fundamentos de datos 43714 INTERACCIÓN HUMANO-COMPUTADORA 441Comprensión de la interacción humano-computadora 441Cómo el ajuste afecta al desempeño y al bienestar 442 / El modelo de aceptación de la tecnologíay su relación con la actitud 443Usabilidad 444Diseño para los estilos cognoscitivos de usuarios individuales 444 / Consideraciones físicas en el diseño dela HCI 448 / Consideración de las limitaciones, discapacidades y diseño de los humanos 449Oportunidad de consultoría 14.1 El espíritu escolar viene en varias tallas 450Implementación de las buenas prácticas de la HCI 450CONTENIDO xvwww.xlibros.com
Tipos de interfaz de usuario 451Interfaces de lenguaje natural 451 / Interfaces de preguntas y respuestas 452 / Menús 453Oportunidad de consultoría 14.2 Preferiría hacerlo yo mismo 454Interfaces de llenado de formularios (formularios de entrada/salida) 454 / Interfaces de lenguaje decomandos 455Oportunidad de consultoría 14.3 No me desaceleren 456Interfaces gráficas de usuario 456 / Otras interfaces de usuario 457Oportunidad de consultoría 14.4 Ésa no es una bombilla 457Lineamientos para el diseño del diálogo 458Comunicación significativa 459 / Mínima acción por parte del usuario 459 / Operación y consistenciaestándar 461Oportunidad de consultoría 14.5 En espera de ser alimentado 461Retroalimentación para los usuarios 461Tipos de retroalimentación 462 / Incluir retroalimentación en el diseño 464Consideraciones de diseño especiales para el comercio electrónico 465Solicitar retroalimentación de los clientes del sitio Web de comercio electrónico 465 / Fácil navegación paralos sitios Web de comercio electrónico 465Oportunidad de consultoría 14.6 Al correr en un maratón, es conveniente saber haciadónde se dirige 466ATRACTIVO DE LA MAC 467Aplicaciones web híbridas (MASHUPS) 468Diseño de consultas 468Tipos de consultas 469 / Métodos de consulta 471Oportunidad de consultoría 14.7 ¡Eh, mírame! (Repetición) 472RESUMEN 474PALABRAS CLAVE Y FRASES 474EXPERIENCIA DE HYPERCASE® 14 475PREGUNTAS DE REPASO 476PROBLEMAS 476PROYECTOS EN GRUPO 477BIBLIOGRAFÍA SELECCIONADA 478EPISODIO 14 Caso de la CPU Depende de los usuarios 479PARTE V ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD 48515 DISEÑO DE PROCEDIMIENTOS PRECISOS DE ENTRADA DE DATOS 485Codificación efectiva 485Mantener el registro de algo 486 / Clasificar la información 487 / Ocultar información 488 / Revelarinformación 489 / Unicode 490 / Solicitar la acción apropiada 491 / Lineamientos generales para lacodificación 491Oportunidad de consultoría 15.1 Aquí parece una jungla 492Oportunidad de consultoría 15.2 Pescar un código de verano 494Captura de datos efectiva y eficiente 494Qué capturar 494 / Dejar que la computadora haga el resto 495 / Cómo evitar cuellos de botella y pasosadicionales 496 / Empezar con un buen formulario 496 / Elegir un método de entrada de datos 496xvi CONTENIDOwww.xlibros.com
Oportunidad de consultoría 15.3 Entrar o no entrar: esa es la cuestión 499Asegurar la calidad de los datos por medio de la validación de la entrada 499Validar las transacciones de entrada 500 / Validar los datos de entrada 500Oportunidad de consultoría 15.4 ¿Validan el estacionamiento? 504El proceso de validación 505Ventajas de la precisión en los entornos de comercio electrónico 506Los clientes teclean sus propios datos 506 / Almacenar datos para su uso posterior 506 / Utilizar datos pormedio del proceso de cumplimiento de pedidos 506 / Proveer retroalimentación a los clientes 506EXPERIENCIA DE HYPERCASE® 15 507RESUMEN 507PALABRAS CLAVE Y FRASES 508PREGUNTAS DE REPASO 508PROBLEMAS 509PROYECTOS EN GRUPO 511BIBLIOGRAFÍA SELECCIONADA 511EPISODIO 15 Caso de la CPU Introducir en forma natural 51216 ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD 515La metodología de administración de la calidad total 516Seis Sigma 516 / Responsabilidad de la administración de la calidad total 516 / Recorrido estructurado 517Oportunidad de consultoría 16.1 La calidad de MIS no se pone a prueba 518Diseño y desarrollo de sistemas descendente 518ATRACTIVO DE LA MAC 520Uso de diagramas de estructura para diseñar sistemas modulares 520 / Arquitectura orientada a servicios(SOA) 522Metodologías de documentación 523Manuales de procedimientos 523 / El método FOLKLORE 523Oportunidad de consultoría 16.2 Escribir está bien 524EXPERIENCIA DE HYPERCASE® 16.1 525Elección de una técnica de diseño y documentación 526Prueba, mantenimiento y auditoría 526El proceso de prueba 526Oportunidad de consultoría 16.3 Estudiando de manera intensiva para su prueba de sistemas 528Prácticas de mantenimiento 528 / Auditoría 529Implementación de sistemas distribuidos 529Tecnología cliente-servidor 529 / Computación en nube 531 / Modelado de red 533Capacitación de usuarios 536Estrategias de capacitación 537 / Lineamientos para la capacitación 537Oportunidad de consultoría 16.4 Puede guiar un pez al agua... pero no puede hacerque la tome 538Conversión a un nuevo sistema 539Estrategias de conversión 539 / Otras consideraciones de conversión 540 / Metáforas organizacionales y surelación con los sistemas exitosos 541Aspectos de seguridad para los sistemas tradicionales y los basados en web 542Seguridad física 542 / Seguridad lógica 542 / Seguridad conductual 543 / Consideraciones especiales deseguridad para el comercio electrónico 543 / Consideraciones de privacidad para el comercioelectrónico 544 / Planeación de recuperación de desastres 544CONTENIDO xviiwww.xlibros.com
Oportunidad de consultoría 16.5 El dulce aroma del éxito 546Evaluación 546Técnicas de evaluación 546 / El enfoque de utilidad del sistema de información 546Oportunidad de consultoría 16.6 Limpiando el nuevo sistema 548Evaluación de sitios web corporativos 548RESUMEN 550EXPERIENCIA DE HYPERCASE® 16.2 551PALABRAS CLAVE Y FRASES 551PREGUNTAS DE REPASO 551PROBLEMAS 552PROYECTOS EN GRUPO 554BIBLIOGRAFÍA SELECCIONADA 554EPISODIO 16 CASO DE LA CPU Semper Redundate 555GLOSARIO 557ACRÓNIMOS 565ÍNDICE 566xviii CONTENIDOwww.xlibros.com
PREFACIONOVEDADES DE ESTA EDICIÓNLa octava edición de Kendal y Kendall: Análisis y diseño de sistemas incluye ciertos cambios sustanciales obliga-torios debido a las rápidas transformaciones ocurridas en el campo de los sistemas de información (IS) durante losúltimos tres años, y se incluyen como respuesta a la aportación de nuestros seguidores, estudiantes y revisores.A lo largo del libro se integran muchas características nuevas y otras se han actualizado. La siguiente lista muestralas novedades específicas: Se introducen tres metodologías en los primeros capítulos: SDLC, metodologías ágiles y el análisis y di-seño de sistemas orientados a objetos con UML, junto con los motivos y las situaciones que indicancuándo utilizarlos (capítulo 1). Cobertura ampliada de COTS, un tipo de software cada vez más utilizado en las organizaciones (capítulo 3). Mayor cobertura sobre el análisis y diseño orientados a objetos; inclusión del tema en la parte central deltexto con el fin de incorporar esta técnica más fácilmente en los proyectos del periodo escolar (capítulo 10). Se incluyen nuevos problemas de análisis y diseño orientados a objetos en el caso de la CPU, Objetos conclase (capítulo 10). Una nueva característica en el texto titulada Atractivo de la Mac, que habla sobre el software innovadordisponible en estas computadoras. Nueva cobertura sobre la computación en nube (capítulo 16). Nueva sección sobre la SOA (arquitectura orientada a servicios) (capítulo 16). Nuevas Preguntas de repaso, Problemas y Ejercicios en grupo al final de los capítulos. Se reorganizó, actualizó y fortaleció el capítulo sobre los métodos ágiles (capítulo 6). Para fortalecer la cobertura sobre la administración de proyectos presentamos los estatutos del proyectodurante las primeras etapas del proceso (capítulo 3). Presentamos un poco antes que en la edición anterior la forma de preparar la proposición de sistemas(capítulo 3). Se actualizaron y optimizaron los Casos de la CPU, a lo largo del texto. Los estudiantes pueden utilizarMicrosoft Access, Microsoft Visio o Visible Analyst para completar las nuevas asignaturas en el texto. Se actualizaron los escenarios, problemas y gráficos a lo largo del texto para acompañar a HyperCase 2.8,una simulación gráfica para la Web que permite a los estudiantes aplicar sus nuevas habilidades.CARACTERÍSTICAS DE DISEÑOLas figuras tienen una apariencia estilizada para ayudar a que los estu-diantes capten con mayor facilidad el tema en cuestión.Se utilizan diagramas conceptuales para presentar las diversas he-rramientas que los analistas de sistemas tienen a su disposición. Esteejemplo muestra las diferencias entre los diagramas de flujo de datoslógico y los diagramas de flujo de datos físico. Los diagramas concep-tuales están codificados por colores para que sus funciones se distinganclaramente y los estudiantes puedan identificar sus elementos con faci-lidad. Se ilustran muchas otras herramientas importantes, incluyendo losdiagramas de caso-uso, los diagramas de secuencia y los diagramas declases.xixArtículos y preciosClienteIdentificarartículo1D1 PreciosArtículos porcomprarPreciosBuscarprecios2ID de artículo Cantidad a pagarCalcular elcosto totaldel pedido3ReciboSaldartransacción yemitir recibo4ClientePagoDiagrama de flujo de datos lógicoCódigos y preciosde artículosClientePasarartículo porel escáner(manual)1D1 Archivo de precios UPC Archivo de trans.temporalArtículosa pagarDescripción y preciosdel artículoBuscar códigoy precio enel archivo2Código debarras UPCMonto calculadoa pagarCalcularcostototal3Recibode la cajaregistradoraRecibir dineroy darrecibo(manual)4ClienteEfectivo,cheque otarjeta dedébitoDiagrama de flujo de datos físicoCódigo UPCD2Artículos, preciosy subtotalesArtículos yprecioswww.xlibros.com
Las pantallas de computadora muestran características importantesdel software que son útiles para el analista. Este ejemplo indica cómo sepueden evaluar los vínculos rotos en un sitio Web mediante un paquetecomo Microsoft Visio. Las pantallas de computadora muestran aspectosimportantes del diseño. Los analistas siempre están buscando mejorar laapariencia de las pantallas y las páginas Web que diseñan. Los coloridosejemplos ayudan a ilustrar por qué algunas pantallas de diseño son especial-mente efectivas.Los formularios de papel se utilizan durante el proceso para mostrarel diseño de las entradas y salidas, así como el diseño de los cuestionarios.Siempre se utiliza tinta azul para la escritura o la introducción de datos,de manera que sea fácil identificar qué es lo que los usuarios llenaron.Aunque la mayoría de las organizaciones tienen como objetivo computari-zar los procesos manuales en un momento dado, gran parte de la captura dedatos se realiza aún a través de formularios de papel. El diseño de formula-rios mejorados permite a los analistas asegurar datos precisos y completosde entrada y salida. Los formularios mejorados también ayudan a optimizarlos nuevos flujos de trabajo internos que se producen debido a las aplica-ciones de negocio a consumidor (B2C) recién automatizadas para el comer-cio electrónico en la Web.Las tablas se utilizan cuando una lista importante necesita atenciónespecial, o cuando es necesario organizar o clasificar información. Tambiénse utilizan para complementar la comprensión del lector de una maneradistinta a la forma en que el material se organiza en el cuerpo del texto. Lamayoría de los analistas encuentra que las tablas son una forma útil de or-ganizar los números y el texto en una “instantánea” significativa.El siguiente ejemplo de una tabla del capítulo 3 muestra la forma en que los analistas pueden refinar sus planesde actividad para el análisis si los desglosan en tareas más pequeñas y luegoestiman el tiempo requerido para completarlas. La filosofía subyacente denuestro libro es que el análisis y diseño de sistemas es un proceso que inte-gra el uso de muchas herramientas con los talentos únicos del analista desistemas para mejorar de manera sistemática la actividad comercial, a tra-vés de la implementación o modificación de los sistemas de informacióncomputarizados. Los analistas de sistemas pueden mejorar en su trabajo alasumir nuevos retos de TI y mantenerse actualizados en su profesión me-diante la aplicación de nuevas técnicas y herramientas.UN BREVE PASEO POR LA OCTAVA EDICIÓNxx PREFACIO8y despuésestimar eltiempo requerido.Realizar entrevistasAdministrar cuestionariosLeer informes de la compañíaIntroducir el prototipoObservar las reacciones al prototipoAnalizar el flujo de datosRealizar el análisis de costo-beneficioPreparar la propuestaPresentar la propuestaRecopilación de datosAnálisis de flujo de datos y decisionesPreparación de la propuesta34453322SemanasrequeridasActividad detalladaActividadDescomponeréstos inclusoaún másREGISTRO DE PAGO: Tot. 31175/0 + 81299 + Renta = 910TOTAL DE PAGO INICIAL REQUERIDO:855 55 910 H/S dep. 4Fechavenc.FechapagoReciboNúm.Pago almediodíaTotalrenta Segu-ridad Lim-pieza 3170081299Otros Montopagado SaldorestanteImp.FechasMontoDescr.Mont.TV 10/ 3 MO! 8/28 8/28 106642 9/30 1031.32 202 115 44.20 25414.8215 1430.52 010/1 10/ 3 107503 10/31 910 910 011 / 1 11/ 1 10935 11/ 16 485.28 485.28 0C1H/S9-16 11/17 11/8 11200 11/ 23 212.31 212.31 0Cobrar 1 MES 11/24ProrrateadoHay que crear H/Spara reembolsardepósito.EDIFICIO # NOMBREFecha original en que se mudó d Exp. x #Rentabase Refri-gerador Mue-blesTotalrenta Segu-ridad Lim-pieza31700Imp.Tarifadiaria8-28 igual 1Kendall 1 eroNOMBRE PROY. # FIRMA CLAVEPOTENCIAL RENTA 1175/0 81299PRORRATEOA/C Ser-vicios HMSR T.V. Muca-ma 31175/0 81299 Días TotalesPOTENCIALDEPÓSITODepósitosSólo memo 31175/0OAK. FC 562H/Srent 30. 33 1.30 91039200 115 31.63 3401430.5215 . 00121 . 325 . 20Trate de detectarlos lugares donde lacomputadora puedasimplificar el trabajo.Observe el número ytipo de transaccionesVerifique los errores.Busqueoportunidades demejorar el diseño.Parte I:Fundamentos delanálisis de sistemasParte II:Análisis de requerimientosde informaciónParte V:Aseguramiento decalidad e implementaciónParte III:El proceso de análisisParte IV:Fundamentos del diseñowww.xlibros.com
Por lo general, el análisis y diseño de sistemas se enseña en uno o dos semestres; nuestro libro se puede utilizar encualquiera de las dos situaciones. El texto es apropiado para los planes de estudios de licenciatura (de dos o cuatroaños) en carreras universitarias de cuatro años, escuelas de graduados o colegios comunitarios. El nivel y la longi-tud del curso pueden variar y se pueden suplementar mediante proyectos reales, HyperCase u otros materialesdisponibles en el Centro de recursos para el profesor.El texto se divide en cinco partes principales: Fundamentos del análisis de sistemas (parte I), Análisis de re-querimientos de información (parte II), El proceso de análisis (parte III), Fundamentos del diseño (parte IV) yAseguramiento de calidad e implementación (parte V).La Parte I (capítulos 1 al 3) hace énfasis en los fundamentos que necesitan conocer los estudiantes sobre loque hace un analista; además ofrece una introducción a las tres principales metodologías del ciclo de vida del de-sarrollo de sistemas (SDLC), las metodologías ágiles y el análisisorientado a objetos con UML, junto con los motivos y las situacionesque indican cuándo utilizarlos. La parte I muestra varios sistemas deinformación emergentes, incluyendo las tecnologías móviles e inalám-bricas, y los sistemas empresariales que integran TI y se ajustan en lasorganizaciones; cómo determinar si vale la pena comprometerse conun proyecto de sistemas; la administración de proyectos de comercioelectrónico; y cómo administrar un proyecto de sistemas mediante eluso de herramientas especiales de software. Se presentan los tres pa-peles del analista de sistemas como consultor, experto en soporte yagente de modificación; también se abordan las cuestiones éticas y loslineamientos profesionales para fungir como consultor de sistemas. Seincluye material sobre los equipos y las organizaciones virtuales, yse introduce el concepto de HCI. Se presenta además el concepto delsoftware de código fuente abierto (OSS). El capítulo 2 indica cómoempezar a trabajar con una organización, para lo cual se dibujan los diagramas de flujo de datos a nivel de contexto, seutilizan los modelos de entidad-relación y se desarrollan casos de uso y escenarios de casos de uso. En el capítulo 3se introduce material extendido sobre la creación de los estatutos del proyecto y se introduce la propuesta de siste-mas en las primeras etapas del proceso, sin importar qué método de análisis y diseño se haya elegido. También seincluye una cobertura más extensa sobre la evaluación del software y hardware, y cuándo usar COTS (softwarecomercial de venta a través de los canales convencionales). Aquí se enseñan varios métodos para pronosticar loscostos y beneficios, lo cual es necesario para el análisis sobre la adquisición de software y hardware. Asimismo,este capítulo ayuda a los estudiantes a evaluar el software, para lo cual compara las ventajas y desventajas entre lacreación de software personalizado, la compra de software comercial directo de los distribuidores (COTS) ola subcontratación con un proveedor de servicios de aplicaciones (ASP). También veremos cómo crear la defi-nición de un problema y presentar una propuesta de sistemas efectiva, en la que se incorporen figuras y gráficospara comunicarse con los usuarios.La parte II (capítulos 4 al 6) enfatiza el uso de las metodologías sistemáticas y estructuradas para realizar elanálisis de los requerimientos de información. Esto permite a los analistas asegurarse de tratar con el problemacorrecto antes de diseñar el sistema. El capítulo 4 introduce un grupode métodos interactivos, incluyendo las entrevistas, el diseño de apli-caciones conjuntas (JAD) y la construcción de cuestionarios. El capí-tulo 5 presenta un grupo de métodos discretos para establecer los re-querimientos de información de los usuarios. Estos métodos incluyen elmuestreo, la investigación de datos duros y los datos de archivo, y laobservación del comportamiento de quienes toman las decisiones y suentorno físico. El capítulo 6, que trata sobre el modelado ágil y losprototipos, es innovador en cuanto al tratamiento de los prototiposcomo otra técnica de recopilación de datos que permite al analista re-solver el problema adecuado al hacer que los usuarios se involucrendesde el principio. Los métodos ágiles tienen sus raíces en los prototi-pos, por lo que este capítulo comienza con la creación de ellos paraproveer un contexto apropiado para su comprensión, y después hablasobre la metodología ágil. Se presentan los valores y principios, actividades, recursos, prácticas, procesos y herra-mientas asociadas con las metodologías ágiles. En este capítulo también se incluye material sobre el desarrollorápido de aplicaciones (RAD) para la recopilación de los requerimientos de información humana y el diseño de lasinterfaces.PREFACIO xxiModificar diagramasy completarespecificacionesDesarrollar ydocumentarel sistemaDibujar diagramasde caso de usoEscribir escenariosde casos de usoDerivar diagramasde actividad de loscasos de usoDesarrollar diagramasde secuenciaDibujar diagramasde estadoCrear diagramasde clasesFase de análisisde sistemasFase de diseñode sistemasFase de identificaciónde los problemasEmpezar el análisis ydiseño orientado a objetosNombre del observador FechaNombre del sistema o proyecto Empresa o ubicaciónNombre o número de programa VersiónUsuario 1 Usuario 2 Usuario 3 Usuario 4Nombre de usuarioPeriodo de observaciónReacciones de losusuariosSugerencias delos usuariosInnovacionesPlanes de revisiónMichael Cerveris 1/06/2010Centro de datos de computación en nube Aquarius Water FiltersMant. Prev. 1Andy H. Pam H.1/06/2010 1/06/2010Favorable engeneral, seemocionó sobreel proyecto.¡Excelente!Agregar la fechaen que se realizóel mantenimiento.Colocar un númerode formulario en laparte superior parareferencia. Colocarla palabra SEMANALen el título.Modificar el1/08/2010Revisar conAndy y Pam.Formulario de evaluación del prototipowww.xlibros.com
La parte III (capítulos 7 al 10) muestra con detalle el proceso deanálisis. Se basa en las dos partes anteriores para que los estudiantes avan-cen al tema del análisis de los flujos de datos, así como de las decisionesestructuradas y semiestructuradas. Provee los detalles sobre cómo utilizarlas técnicas estructuradas para dibujar diagramas de flujo de datos (DFD).En el capítulo 7 veremos cómo crear diagramas hijos, cómo desarrollardiagramas de flujo de datos tanto físicos como lógicos y cómo particionarlos diagramas de flujo de datos. El capítulo 8 contiene material acerca delrepositorio de datos y el balanceo vertical de los diagramas de flujo de da-tos. También veremos los detalles sobre el lenguaje extensible de marcado(XML) y una demostración acerca del uso de diccionarios de datos paracrear XML. El capítulo 9 incluye material sobre el desarrollo de las especi-ficaciones de los procesos. Un análisis de las especificaciones tanto físicascomo lógicas de los procesos muestra cómo utilizar las especificaciones deprocesos para el balanceo horizontal. En este capítulo también veremoscómo crear diagramas de las decisiones estructuradas mediante el lenguajeinglés estructurado, las tablas y los árboles de decisiones. Además veremoscómo elegir un método de análisis de decisiones apropiado para analizar lasdecisiones estructuradas y crear las especificaciones de los procesos. También se incluye una introducción a lastecnologías de empuje (push).La parte III concluye con el capítulo 10 sobre el análisis y diseño de sistemas orientados a objetos. Aquí seincluye una sección detallada sobre el uso del lenguaje unificado de modelado (UML). También cuenta con unaminuciosa cobertura del modelo de casos de uso, cómo crear el diagrama de modelo de clases con UML, los diagra-mas de secuencia, la creación de diagramas de generalización/especialización (gen/spec), los escenarios de casosde uso y los diagramas de actividad. Mediante el uso de varios ejemplos y la sección Oportunidades de consultoríase demuestra cómo usar una metodología orientada a objetos. Las Oportunidades de consultoría, los diagramas ylos problemas permiten a los estudiantes aprender y utilizar el UML para modelar sistemas desde una perspectivaorientada a objetos, e identificar las situaciones apropiadas para utilizar una metodología de este tipo. Este capítuloayuda a los estudiantes a decidir entre utilizar el SDLC, la metodología ágil o el análisis y diseño de sistemasorientados a objetos para desarrollar un sistema.La parte IV (capítulos 11 al 14) trata sobre los fundamentos del di-seño. Empieza con el diseño de la salida, ya que muchos practicantes tienenla creencia de que los sistemas están controlados por la salida. Se abordacon detalle el diseño de formularios basados en Web y se pone especialatención en relacionar el método de salida con el contenido, el efecto de lasalida sobre los usuarios y cómo diseñar buenos formularios y pantallas. Enel capítulo 11 se comparan las ventajas y las desventajas de la salida, inclu-yendo pantallas Web, audio, DVD y la salida electrónica como el correoelectrónico y los canales RSS. En este capítulo también se hace un énfasis enel diseño de un sitio Web para fines de comercio electrónico y se tratan los temas de producción de la salida y elXML. El capítulo 12 incluye material innovador sobre el diseño de formularios de entrada basados en Web, asícomo el diseño de otros tipos de formularios electrónicos. También incluye el diseño de formularios asistido porcomputadora.El capítulo 12 presenta una cobertura detallada sobre el diseño de sitios Web, incluyendo los lineamientossobre cuándo deben los diseñadores agregar video, audio y animaciones a los diseños de sitios Web. Veremos losusos de las tecnologías Web push y pull para los diseños de las salidas. Incluye un estudio detallado de cómo creargráficos efectivos para sitios Web corporativos y las formas de diseñar una navegación efectiva en pantalla para losusuarios de sitios Web.Incluye una cobertura sobre el diseño de páginas para intranets y extranets, un estudio sobre las restriccionesde integridad en las bases de datos, cómo actúa el usuario con la computadora y cómo diseñar una interfaz apro-piada. La parte IV también trata sobre la importancia de la retroalimentación de los usuarios. Asimismo veremoscómo diseñar procedimientos precisos para introducir datos que aprovechan por completo las herramientas compu-tacionales y humanas para asegurar que se introduzcan datos de calidad.En el capítulo 13 mostraremos cómo utilizar el diagrama de entidad-relación para determinar las claves de losregistros y proveeremos los lineamientos para el diseño de la relación archivo/base de datos. Los estudiantes apren-derán acerca de la relevancia del diseño de bases de datos en relación con la utilidad en general del sistema y cómoutilizar las bases de datos en la realidad.xxii PREFACIOmétodo(Parámetro)retornoseñalAsíncrona()::Clase Objecto::ClaseLogotipo del sitio Web Artículo de portadaImagen jpegSuscripciónde videoVínculos rápidos Artículos principales Salas de chatAnuncios Vínculo de contacto por emailFuentes RSSAnuncios de pancartaVínculos asub-WebsMotor de búsquedawww.xlibros.com
El capítulo 14 hace énfasis en la interacción humano-computadora (HCI), especialmente la forma en que serelaciona con el diseño de interfaces. Aquí se introduce el concepto de HCI y su importancia en el diseño de siste-mas que se adapten a los individuos y los ayuden a cumplir con sus metas personales y organizacionales medianteel uso de la tecnología de la información. Se introducen los conceptos sobre capacidad de uso, ajuste, utilidadpercibida y facilidad de uso percibida, al igual que el Modelo de aceptación de tecnología (TAM), de manera quelos estudiantes de sistemas puedan hacerse expertos en incorporar las prácticas de HCI a sus diseños. Asimismoveremos material relacionado con el diseño de un sistema de navegación en pantalla sencillo para los visitantes desitios Web. El capítulo presenta las metodologías innovadoras para realizar búsquedas en Web, resalta la informa-ción importante sobre el diseño de GUI y provee metodologías innovadoras para diseñar cuadros de diálogo. Elcapítulo 14 articula las consideraciones de diseño especializadas para los sitios Web de comercio electrónico.Introduce el concepto de las aplicaciones Web híbridas (mashups), que se crean al combinar dos o más interfacesde programación de aplicaciones basadas en Web. Por último, incluye una cobertura detallada para formular con-sultas, todo dentro del marco de trabajo de HCI.La parte V (capítulos 15 y 16) concluye el libro. El capítulo 15 seenfoca en el diseño de procedimientos precisos de introducción de datos eincluye material sobre la administración de la cadena de suministro a travésdel diseño efectivo del comercio electrónico de negocio a negocio (B2B).El capítulo 16 hace énfasis en el uso de una metodología de calidad totalpara mejorar el diseño y el mantenimiento del software. Además incluyematerial sobre seguridad de sistemas y firewalls. Los procesos de prueba,auditoría y mantenimiento de sistemas se describen en el contexto de laadministración de calidad total. Este capítulo ayuda a los estudiantes a com-prender cómo es que la arquitectura orientada a servicios (SOA) y las nubesde computadoras están cambiando la naturaleza del diseño de sistemas deinformación. Asimismo, los estudiantes aprenderán cómo diseñar progra-mas de capacitación apropiados para los usuarios del nuevo sistema, cómoreconocer las diferencias entre las estrategias de conversión físicas y cómorecomendar la estrategia apropiada a un cliente. El capítulo 16 tambiénpresenta las técnicas para modelar redes, lo cual se puede llevar a cabo mediante herramientas populares tales comoMicrosoft Visio.Se incluye material sobre seguridad y privacidad en relación con el diseño de aplicaciones de comercio elec-trónico; también veremos información sobre seguridad, en especial firewalls, puertas de enlace (gateways), infra-estructura de clave pública (PKI), transacciones electrónicas seguras (SET), nivel de sockets seguros (SSL), soft-ware antivirus, productos para filtrar URL y correo electrónico, y redes virtuales privadas (VPN). Adicionalmenteveremos los temas actuales de interés para los diseñadores de aplicaciones de comercio electrónico, incluyendo eldesarrollo y la publicación de las políticas de privacidad corporativas.En esta sección también veremos información importante sobre la forma en que el analista puede promover ydespués monitorear un sitio Web, que incluye el monitoreo de la actividad Web, la promoción de estos sitios, aná-lisis de tráfico en la red y análisis de los perfiles de la audiencia para asegurar la efectividad de los nuevos sistemasde comercio electrónico. Además cubriremos de manera sistemática las técnicas para evaluar el proyecto de siste-mas de información completo.Esta octava edición contiene un actualizado Glosario de términos y una lista separada de los Acrónimosutilizados en el libro y en el campo del análisis y diseño de sistemas.CARACTERÍSTICAS PEDAGÓGICASCada capítulo de esta edición contiene: Objetivos de aprendizaje al inicio de cada capítulo. Resúmenes que enlazan los puntos principales de cada capítulo y proporcionan una excelente fuente derepaso para los exámenes. Palabras clave y frases. Preguntas de revisión. Problemas. Proyectos en grupo que ayudan a los estudiantes a trabajar en conjunto en un equipo de sistemas para re-solver problemas importantes que se resuelven mejor a través de la interacción en un grupo. Oportunidades de consultoría: ahora con más de 60 mini casos a lo largo del libro.PREFACIO xxiiiServicios Web Servicios deaplicacionesServicios de basesde datosComputadoras clientewww.xlibros.com
 Atractivo Mac: columnas que informan a los estudiantes sobre el software de diseño disponible en laMac y el iPhone. Experiencias de HyperCase. Episodios del caso de la CPU: partes de un caso continuo esparcidas por todo el libro.OPORTUNIDADES DE CONSULTORÍALa octava edición presenta más de 60 oportunidades de consultoría.Muchas de ellas tratan sobre temas relevantes y emergentes que hansurgido en el campo, incluyendo el diseño de sistemas desde una pers-pectiva de HCI, aplicaciones de comercio electrónico para la Web, soft-ware COTS y el uso de UML para modelar sistemas de informacióndesde una perspectiva orientada a objetos. Las oportunidades de consul-toría se pueden utilizar para estimular debates en la clase o se puedenasignar como tareas o preguntas de examen para resolver en casa.Debido a que no todos los sistemas son proyectos extendidos de doso tres años, nuestro libro contiene muchas oportunidades de consultoríaque se pueden resolver con rapidez en 20 o 30 minutos en grupo o porescrito en forma individual. El objetivo de estos minicasos, que están es-critos con un toque de humor para alegrar un poco el momento, es que los estudiantes sinteticen lo que han apren-dido hasta ese punto del curso, que maduren en cuanto a su juicio profesional y ético, y que articulen el razona-miento que condujo a sus decisiones sobre los sistemas.EXPERIENCIAS DE HYPERCASEEn cada capítulo se presentan Experiencias de HyperCase®, que plan-tean desafiantes ejercicios para los estudiantes. En esta octava edición seincluyen nuevos escenarios, gráficos y problemas para acompañar laversión 2.8 de HyperCase. Este software cuenta con problemas organi-zacionales basados en sistemas con tecnología de punta. HyperCase re-presenta a una organización virtual original que permite a los estudiantesque acceden a ella sumergirse de inmediato en la vida organizacional.Los estudiantes entrevistarán personas, observarán los entornos de ofi-cina, analizarán sus prototipos y revisarán la documentación de sus sis-temas existentes. HyperCase 2.8 es un software interactivo basado enWeb que presenta a una organización llamada Maple Ridge Engineering(MRE) en un entorno colorido con gráficos tridimensionales. HyperCasepermite a los profesores abordar la clase sobre el análisis y diseño desistemas con apasionante material multimedia. Al observar cuidadosa-mente la manera en que utilizan el tiempo y administran varios métodos,los estudiantes utilizan las herramientas de hipertexto de HyperCase en la Web para crear sus propias rutas indivi-duales por la organización.Maple Ridge Engineering se basa en las experiencias de consultoría reales de los autores de la versión original(Raymond Barnes, Richard Baskerville, Julie E. Kendall y Kenneth E. Kendall). Allen Schmidt se unió al proyectopara la versión 2.0 y ha permanecido en él. Peter Schmidt fue el programador de HTML y Jason Reed creó lasimágenes para la versión Web inicial.En cada capítulo hay Experiencias de HyperCase recién actualizadas que incluyen asignaturas (e incluso al-gunas pistas) para ayudar a los estudiantes a resolver los difíciles problemas organizacionales, incluyendo el desa-rrollo de nuevos sistemas, la fusión de departamentos, la contratación de empleados, la seguridad, el comercioelectrónico y la planificación de recuperación de desastres, todo lo cual pueden encontrar en MRE. HyperCase seha probado totalmente en salones de clases y resultó ganador de un premio en la competencia de InstrucciónInnovadora del Instituto de Ciencias de la Decisión (Decision Sciences Institute Innovative Instruction).EPISODIOS DEL CASO DE LA CPUPara hacer honor a nuestra creencia de que es importante usar una variedad de metodologías, hemos integrado unavez más el caso de la Central Pacific University (CPU) en cada capítulo de esta edición. El caso de la CPU utilizaxxiv PREFACIOApellido paterno del paciente Primer nombre Inicial segundo nombreEstación de inspección Fecha del examenNúmero de paciente Número de seguro socialPrimer examen Número de reclamaciónSECCIÓN DE AUDIOMETRÍA VOCAL Comentarios [UMBRAL DE RECEPCIÓN DE VOZOído derecho [ ]Oído izquierdo [ ] Referido por [ ]DISCR. OÍDO DERECHO. Motivo de referencia% [ ] Enmascaramiento [ ]% [ ] Enmascaramiento [ ]Audiólogo examinadorDISCRIM. OÍDO IZQUIERDO Número de audiólogo examinadorSiguiente solicitanteINFORME DEL EXAMEN AUDIOLÓGICOCONDUCCIÓN DE AIRECONDUCCIÓN ÓSEA500 1000 2000 4000 6000Oído derecho500 1000 2000 4000 6000Oído izquierdo500 1000 2000 4000 6000Oído derecho500 1000 2000 4000 6000Oído izquierdowww.xlibros.com
las herramientas Microsoft Access, Microsoft Visio y la popular herramientaCASE Visible Analyst, de Visible Systems, Inc. para la captura de las pan-tallas de ejemplo y los ejercicios para los estudiantes.En el caso de la CPU, los estudiantes recorrerán todas las fases del ciclode vida del desarrollo de sistemas. Este caso funcional ofrece a los estudian-tes la oportunidad de resolver problemas por su cuenta, mediante el uso devarias herramientas y datos que los usuarios del libro pueden descargar delsitio Web complementario y que incluyen ejercicios de Microsoft Visio,Microsoft Access y Visible Analyst relacionados específicamente con cadacapítulo del libro. Además, hay ejercicios parcialmente resueltos, disponi-bles a través del sitio Web en forma archivos de Microsoft Access, para quelos estudiantes los utilicen. El caso de la CPU se ha probado completamenteen salones de clases en todo el mundo con una amplia variedad de estudian-tes y durante varios periodos académicos. El caso es tan detallado, rigurosoy completo, que se podría utilizar como un proyecto independiente de aná-lisis y diseño de sistemas durante uno o dos periodos académicos, O comoun método para enseñar sobre el uso de las herramientas CASE junto con laasignatura de un proyecto real durante uno o dos periodos académicos fuera del salón de clases.SOPORTE WEB EXPANDIDO (EN INGLÉS)La octava edición de Análisis y diseño de sistemas de Kendall y Kendallcuenta con soporte basado en Web para ofrecer técnicas pedagógicas sóli-das e interesantes en el campo de los sistemas de información. El sitio Web se encuentra en www.pearsoneducacion.net /kendall ycontiene muchas herramientas de aprendizaje y apoyo imprescindi-bles, para que los debates en clase siempre sean emocionantes. HyperCase 2.8 es un juego interactivo de una organización virtualque ha obtenido varios premios. Se anima a los estudiantes a entre-vistar personas en la organización, analizar problemas, modificar losdiagramas de flujo y los diccionarios de datos, reaccionar a los proto-tipos y diseñar nuevas entradas y salidas. Ahora HyperCase cuentacon una inconfundible apariencia en 3-D. Ejercicios para los estudiantes con base en el caso continuo de laCPU, con ejemplos y problemas parcialmente resueltos almacenadosen archivos de Microsoft Access y Visible Analyst, para que los estu-diantes desarrollen un sistema de administración computacional ba-sado en Web.SOPORTE WEB COMPLEMENTARIO EXTENDIDOPARA INSTRUCTORESEn la página de este libro www.pearsoenducacion.net/kendall hay recursos de soporte extendido para los instruc-tores que usen esta edición (en inglés): Un conjunto completo de diapositivas de presentaciones de PowerPoint para emplearlas en conferen-cias. Biblioteca de imágenes (Image Library), una colección organizada por capítulo. Manual para el instructor con respuestas a los problemas, soluciones a los casos y sugerencias paraabordar el tema en cuestión. Test Item File Un archivo de elemento de prueba en Microsoft Word y TestGen con conversiones listaspara WebCT y Blackboard. Soluciones a los ejercicios para los estudiantes basadas en el caso continuo de la CPU, con solucionesy ejemplos almacenados en archivos de Visual Analyst y de Microsoft Access.Para mayor información, contacte al Representante de Pearson en su zona.PREFACIO xxvwww.xlibros.com
www.xlibros.com
AGRADECIMIENTOSDurante la redacción de esta octava edición de Análisis y diseño de sistemas ocurrieron cambios rápidos y consi-derables en la tecnología de la información. Nos deleita saber que esta edición se publica en el momento adecuadopara reflejar muchos de estos avances en el desarrollo de sistemas.Uno de los principales cambios es el surgimiento de tres metodologías principales para el desarrollo: SDLC,metodologías ágiles y el análisis y diseño de sistemas orientado a objetos. La presente obra muestra dónde y en quésituaciones le puede servir cada una de estas metodologías a usted, como analista de sistemas.Otro de los grandes cambios es el rápido aumento en el uso de la Web como plataforma para sistemas de in-formación. La arquitectura orientada a servicios y la computación en nube están cambiando la forma en que elanalista debe abordar el diseño de soluciones de sistemas. Además de la Web, los analistas se ven presionados adiseñar para un amplio espectro de tecnologías de información emergentes, como las inalámbrica y móvil, lossistemas empresariales y los contextos virtuales tales como equipos y organizaciones virtuales.Otro de los cambios importantes reflejados en esta edición es la habilidad de los usuarios para personalizar susescritorios, espacios de trabajo y páginas Web, e incluso de alterar los diseños profesionales de los analistas desistemas. A diferencia de los usuarios, los analistas ven todo el panorama y siempre deben estar conscientes de losimpactos organizacionales que se producen al cambiar los sistemas.A través de este libro usted aprenderá y aplicará numerosas técnicas, métodos, herramientas y metodologías.Pero llegado el momento de interpretar lo que ocurre en la organización y desarrollar sistemas de información re-presentativos con base en las reglas que usted aplique en su análisis, lo que aprendió deberá combinarse con lacreatividad para producir un sistema que puede ser en cierto modo una sorpresa: es estructurado pero intuitivo;basado en multiniveles y complejo para estar en armonía con el carácter de la organización, y además debe reflejarsu personalidad como analista de sistemas y ser humano.Nuestros estudiantes merecen crédito por esta nueva edición, ya que brindaron retroalimentación y sugerenciaspara mejorar, además de pedir una cobertura más detallada sobre ciertos temas. Los estudiantes nos dijeron quepusieron rápidamente en uso el nuevo material sobre el análisis y diseño de sistemas orientados a objetos, así comoel de modelado ágil. Su afán por enseñarnos nuevas cosas mantuvo la frescura de este libro. Queremos agradecera nuestro coautor Allen Schmidt, quien una vez más trabajó con nosotros en los Episodios del caso de la CPU y enHyperCase 2.8, por todo su gran esfuerzo, dedicación y humor durante el tiempo que estuvimos colaborando conél. Es una persona maravillosa. También ofrecemos nuestro agradecimiento a Peter Schmidt y Jason Reed pormejorar el software HyperCase anterior. Y queremos agradecer a los otros dos autores originales de HyperCase,Richard Baskerville y Raymond Barnes por su enorme contribución.Damos la gracias al equipo de producción de la octava edición, en especial a nuestro director ejecutivo BobHoran, cuya sabiduría y tranquilidad siempre brindan inspiración. También agradecemos a Kelly Loftus, nuestraextremadamente habilidosa editora asistente, por su ecuánime competencia y su optimismo para mantener el pro-yecto en constante avance. Ana Jankowsi, nuestra editora de producción, también merece una mención especial porayudarnos a convertir este proyecto en una revisión sólida, completa y precisa. Su ayuda y entusiasmo facilitaronel proceso de completar el proyecto sin problemas y a tiempo.También queremos agradecer el estímulo y el apoyo de toda la comunidad Rutgers, incluyendo a nuestro mi-nistro Wendell Prittchett, nuestros colegas en la Escuela de Negocios de Camden y en todo Rutgers, a nuestropersonal y al Consejo de Administración. Todos han mostrado mucho entusiasmo sobre esta edición, y sobre lasdiversas traducciones de este libro disponibles en español, chino e indonesio.xxviiwww.xlibros.com
Todos los revisores de la octava edición merecen también nuestro agradecimiento. Sus considerados comen-tarios y sugerencias ayudaron a fortalecer el libro. Ellos son:Stephen T. Brower, Raritan Valley Community CollegeRobert F. Cope III, Southeastern Lousiana UniversityJunhua Ding, East Carolina UniversityJon Gant, University of IllinoisCliff Layton, Rogers State UniversityKeng Siau, University of Nebraska-LincolnMuchos de nuestros colegas y amigos nos alentaron al momento de escribir este libro. Queremos agradecer suscomentarios sobre nuestro trabajo a Ayman Abu Hamdieh, Macedonio Alanis, Michel Avital, los Ciupek, Charles J.Coleman, Roger T. Danforth, Gordon Davis, EgoPo, Paul Gray, Nancy V. Gulick, Andy y Pam Hamingson, BlakeIves, Richard Kalina, Carol Latta, Ken y Jane Laudon, Richard Levao, Joel y Bobbie Porter, Caryn Schmidt, Marc yJill Schniederjans, Gabriel Shanks, Detmar W. Straub, Jr., los Vargo, Merrill Warkentin, Jeff y Bonnie Weil, PingZhang, a todos nuestros amigos y colegas en la Asociación para Sistemas de Información, el Instituto de Ciencias dela Decisión, el Grupo de trabajo 8.2 del IFIP y a todos aquellos involucrados en el Proyecto PhD (financiado por laFundación KPMG), que atiende a estudiantes de minorías en doctorados en sistemas de información.Agradecemos de corazón a la memoria de Julia A. Kendall y a la memoria de Edward J. Kendall. Su convicciónde que el amor, las metas y el trabajo duro son una combinación invencible sigue influyendo en todos nuestrosesfuerzos.xxviii AGRADECIMIENTOSJulie y Ken Kendall agradecen personalmente a Shrek (Brian d’Arcy James) y a todos nuestros queridosamigos en el teatro y las artes escénicas.www.xlibros.com
1C A P Í T U L O 1Sistemas, roles ymetodologías de desarrolloOBJETIVOS DE APRENDIZAJEAl completar este capítulo usted podrá:1. Recordar los tipos básicos de sistemas de computación que un analista debe conocer.2. Comprender la forma en que los usuarios de las nuevas tecnologías pueden modificarla dinámica de un sistema.3. Conocer los distintos roles de un analista de sistemas.4. Comprender los fundamentos de tres metodologías de diseño: SDL, la metodología ágily el análisis y diseño de sistemas orientado a objetos.5. Aprender sobre las herramientas CASE y cómo pueden ayudar a un analista desistemas.Durante mucho tiempo, las organizaciones han reconocido la importanciade administrar recursos clave como las personas y la materia prima. Actual-mente, la información ha encontrado su lugar apropiado como recursoclave. Los responsables de la toma de decisiones por fin comprenden quela información no es sólo un producto derivado de las operaciones comer-ciales, sino que además provee impulso a las empresas y puede constituir el factor decisivo paradeterminar el éxito o el fracaso de un negocio.Para maximizar la utilidad de la información, una empresa debe administrarla en formaapropiada, de la misma manera en que administra los demás recursos. Los administradoresnecesitan comprender que hay costos asociados con la producción, distribución, seguridad, elalmacenamiento y la recuperación de toda información. Aunque la información está a nuestroalrededor, no es gratuita y no debemos dar por hecho su uso estratégico para poner a unaempresa en una posición competitiva.El hecho de que las computadoras se puedan conectar de manera rápida y sencilla a unared, aunado a la capacidad de acceder a Internet y Web, ha creado una explosión de informa-ción en la sociedad en general, y en los negocios en particular. El proceso de administrar lainformación generada por computadora difiere de manera considerable del proceso de mane-jar los datos producidos en forma manual; por lo general debemos administrar una mayorcantidad de información computacional. Los costos de administración y mantenimiento pue-den aumentar a ritmos alarmantes, y a menudo los usuarios consideran este tipo de informa-ción con menos escepticismo que la que se obtiene de otras fuentes. En este capítuloexaminaremos los fundamentos de distintos tipos de sistemas de información, los diversosroles de los analistas de sistemas, las fases en el ciclo de vida del desarrollo de sistemas (SDLC)y la forma en que se relacionan con los factores de Interacción humano-computadora (HCI),además de una introducción a las herramientas de Ingeniería de Software Asistida por Compu-tadora (CASE).P A R T E IFundamentos delanálisis de sistemaswww.xlibros.com
2 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASTIPOS DE SISTEMASLos sistemas de información se desarrollan para distintos fines, dependiendo de las necesidades de los usuarioshumanos y la empresa. Los sistemas de procesamiento de transacciones (TPS) funcionan en el nivel operacionalde la organización; los sistemas de automatización de oficinas (OAS) y los sistemas de trabajo de conocimiento(KWS) brindan soporte para el trabajo a nivel del conocimiento. Entre los sistemas de nivel superior se encuen-tran los sistemas de información administrativa (MIS) y los sistemas de soporte de decisiones (DSS). Los siste-mas expertos aplican la experiencia de los encargados de tomar decisiones para resolver problemas específicos yestructurados. En el nivel estratégico de la administración se encuentran los sistemas de soporte para ejecutivos(ESS). Los sistemas de soporte de decisiones en grupo (GDSS) y los sistemas de trabajo colaborativo asistidopor computadora (CSCWS), que se describen en forma más general, ayudan en el proceso de toma de decisiones,a nivel de grupo, de la variedad semiestructurada o no estructurada.En la figura 1.1 se muestra la variedad de sistemas de información que pueden desarrollar los analistas.Observe que la figura presenta estos sistemas de arriba hacia abajo, indicando que el nivel operacional de la or-ganización (el más bajo) cuenta con apoyo (soporte) de los sistemas TPS, mientras que el nivel estratégico dedecisiones semiestructuradas y no estructuradas (el más alto) cuenta con soporte de los sistemas ESS, GDSSy CSCWS en la parte superior. En este libro utilizamos los términos sistemas de información administrativa,sistemas de información (IS), sistemas de información computarizados y sistemas de información de negocioscomputarizados para indicar los mismos sistemas de información computarizados que ofrecen soporte para elrango más amplio de interacciones de los usuarios con las tecnologías y actividades comerciales por medio de lainformación que producen en contextos organizacionales.Sistemas de procesamiento de transaccionesLos sistemas de procesamiento de transacciones (TPS) son sistemas de información computarizados que se de-sarrollaron para procesar grandes cantidades de información para las transacciones de negocios rutinarias, comonóminas e inventario. Un TPS elimina el tedio de las transacciones operacionales necesarias y reduce el tiempoque se requería para realizarlas en forma manual, aunque la mayoría de las personas aún deben introducir losdatos en forma manual en los sistemas computarizados.Los sistemas de procesamiento de transacciones son sistemas que atraviesan límites y permiten que la organi-zación interactúe con los entornos externos. Como los administradores analizan los datos generados por el TPS paraobtener información actualizada sobre lo que ocurre en sus empresas, es imprescindible que estos sistemas funcionensin problemas ni interrupciones para sustentar las operaciones diarias de estas compañías.Sistemas de automatización de oficinas y sistemas de trabajo de conocimientoEn el nivel de conocimiento de la organización hay dos clases de sistemas. Los sistemas de automatización deoficinas (OAS) brindan apoyo a las personas que trabajan con datos no para crear conocimiento sino para anali-ESSGDSSCSCWSSistemas expertosSistemas de soporte de decisionesSistemas de información administrativaSistemas de trabajo de conocimientoSistemas de automatización de oficinasSistemas de procesamiento de transaccionesFIGURA 1.1Un analista de sistemas puedeinvolucrarse con cualquiera o contodos estos sistemas.* Esta traducción es la más aceptada por la mayoría de los académicos, aunque una mejor traducción de estas siglas sería: Sistemas de apoyo a latoma de decisiones, y sistemas de apoyo a la toma de decisiones en grupo, para las siglas GDSS.www.xlibros.com
CAPÍTULO 1 • SISTEMAS, ROLES Y METODOLOGÍAS DE DESARROLLO 3zar la información y transformar los datos o manipularlos de cierta forma antes de compartirlos o diseminarlos demanera formal a través de la organización y, algunas veces, más allá. Los aspectos más conocidos de los sistemasOAS son el procesamiento de palabras, las hojas de cálculo, el diseño gráfico por computadora, la planificaciónelectrónica y la comunicación a través de correo de voz, correo electrónico (e-mail) y teleconferencias.Los sistemas de trabajo de conocimiento (KWS) brindan apoyo a profesionales como científicos, ingenieros ymédicos, ayudándoles a crear conocimiento (a menudo en equipos) y a integrarlo a su organización o la sociedad.Sistemas de información administrativaLos sistemas de información administrativa (MIS) no sustituyen a los sistemas de procesamiento de transaccio-nes; más bien, todos los sistemas MIS incluyen el procesamiento de transacciones. Los MIS son sistemas deinformación computarizados que funcionan debido a la decidida interacción entre las personas y las computado-ras. Al requerir que las personas, el software y el hardware funcionen en concierto, los sistemas de informaciónadministrativa brindan soporte a los usuarios para realizar un espectro más amplio de tareas organizacionales quelos sistemas de procesamiento de transacciones, incluyendo los procesos de análisis y toma de decisiones.Para acceder a la información, los usuarios del sistema de información administrativa comparten una basede datos común; ésta almacena tanto los datos como los modelos que permiten al usuario interactuar con ellos,interpretarlos y aplicarlos. Los sistemas de información administrativa producen información que se utiliza enel proceso de toma de decisiones. También pueden ayudar a integrar algunas de las funciones de informacióncompu tarizadas de una empresa.Sistemas de soporte de decisionesLos sistemas de soporte de decisiones (DSS, o sistemas de apoyo a la toma de decisiones) pertenecen a una clasesuperior de sistemas de información computarizados. Los sistemas DSS son similares al sistema de informaciónadministrativa tradicional debido a que ambos dependen de una base de datos como fuente de datos. La diferen-cia estriba en que el sistema de soporte de decisiones está más enfocado a brindar respaldo a la toma de decisio-nes en todas sus fases, aunque la decisión misma aún corresponde de manera exclusiva al usuario. Los sistemasde soporte de decisiones se ajustan más a la persona o el grupo usuario que un sistema de información adminis-trativa tradicional. También se describen a veces como sistemas enfocados en la inteligencia de negocios.Inteligencia artificial y sistemas expertosLa inteligencia artificial (AI) puede ser considerada como el campo dominante de los sistemas expertos. Laidea general de la AI ha sido desarrollar equipos que se comporten de manera inteligente. Dos ramas de inves-tigación de la AI son 1) la comprensión del lenguaje natural y (2) el análisis de la habilidad para razonar unproblema y llegar a una conclusión lógica. Los sistemas expertos utilizan las metodologías de razonamiento dela AI para resolver los problemas que los usuarios de negocios (y otros tipos de usuarios) les presentan.Los sistemas expertos son una clase muy especial de sistema de información que ha demostrado su utilidad co-mercial gracias a la disponibilidad extendida de hardware y software como las computadoras personales (PC) y lasinterfaces de sistemas expertos. Un sistema experto (también conocido como sistema basado en el conocimiento) cap-tura y utiliza en forma efectiva el conocimiento de uno o varios expertos humanos para resolver un problema especí-fico al que una organización se enfrenta. Cabe mencionar que a diferencia de los sistemas DSS, que en última instanciadejan la decisión a la persona encargada de la toma de decisiones, un sistema experto selecciona la mejor solución paraun problema o una clase específica de problemas.Los componentes básicos de un sistema experto son la base de conocimiento, un motor de inferencia queconecta al usuario con el sistema mediante el proceso de consultas en lenguajes —como el lenguaje de consultaestructurado (SQL) —, y la interfaz de usuario. Las personas conocidas como ingenieros del conocimiento cap-turan la experiencia de los expertos, crean un sistema computacional que incluye este conocimiento y después loimplementan.Sistemas de soporte de decisiones en grupoy sistemas de trabajo colaborativo asistido por computadoraLas organizaciones confían cada vez más en los grupos o equipos para tomar decisiones en conjunto. Cuandolos grupos toman decisiones semiestructuradas o no estructuradas, un sistema de soporte de decisiones en grupo(GDSS, o sistema de apoyo a la toma de decisiones en grupo) puede ofrecer una solución. Estos sistemas, que seutilizan en cuartos especiales equipados con varias configuraciones, permiten a los miembros de los grupos inte-ractuar con el soporte electrónico (a menudo en la forma de software especializado) y un facilitador de grupo es-pecial. El objetivo de los sistemas de soporte de decisiones en grupo es lograr que un grupo resuelva un problemacon la ayuda de varios apoyos como encuestas, cuestionarios, lluvia de ideas y creación de escenarios. Se puedediseñar software GDSS para minimizar los comportamientos de grupo negativos típicos como la escasez de parti-cipación por temor a las represalias por expresar un punto de vista impopular o polémico, la dominación por partewww.xlibros.com
4 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASde los miembros del grupo con facilidad de palabra y la toma de decisiones mediante el “pensamiento grupal”.Algunas veces los sistemas GDSS se consideran bajo el término más general de sistemas de trabajo colaborativoasistido por computadora (CSCWS), que podría incluir el soporte de software conocido como groupware paracolaborar en equipo mediante computadoras conectadas en red. Los sistemas de soporte de decisiones en grupotambién se pueden utilizar en un ambiente virtual.Sistemas de soporte para ejecutivosCuando los ejecutivos fijan su atención en la computadora, a menudo buscan obtener ayuda para tomar deci-siones en el nivel estratégico. Los sistemas de soporte para ejecutivos (ESS, sistemas de apoyo para ejecutivos)ayudan a los ejecutivos a organizar sus interacciones con el entorno externo ofreciendo tecnologías de gráficosy comunicaciones en sitios accesibles como salas de juntas u oficinas corporativas personales. Aunque los sis-temas ESS se basan en la información que generan los sistemas TPS y MIS, ayudan a sus usuarios a enfrentarlos problemas relacionados con decisiones no estructuradas inespecíficas de una aplicación, para lo cual creanun entorno que les ayude a pensar sobre los problemas estratégicos de una manera informada. Los sistemas ESSextienden las capacidades de los ejecutivos y les ofrecen soporte para que puedan entender mejor sus entornos.INTEGRACIÓN DE LAS TECNOLOGÍAS EN SISTEMASA medida que los usuarios adoptan nuevas tecnologías, parte del trabajo del analista de sistemas consiste en in-tegrar los sistemas tradicionales con los nuevos para asegurar un contexto útil, como se muestra en la figura 1.2.En esta sección veremos algunas de las nuevas tecnologías de información que los analistas de sistemas utilizana medida que las personas trabajan para integrar sus aplicaciones de comercio electrónico en sus negocios tradi-cionales, o a medida que inician negocios electrónicos completamente nuevos.Las aplicaciones de comercio electrónico y los sistemas WebA muchos de los sistemas que veremos en este libro se les puede agregar una mayor funcionalidad si se hacen mi-grar a la World Wide Web o si se conciben e implementan originalmente como tecnologías basadas en Web. Haymuchos beneficios relacionados con el proceso de montar o mejorar una aplicación en Web:1. Aumenta el número de usuarios que se enteran de la disponibilidad de un servicio, producto, industria,persona o grupo.2. Los usuarios tiene la posibilidad de acceder las 24 horas del día.ESSGDSSCSCWSSistemas expertosSistemas de soporte de decisionesSistemas de información administrativaSistemas de trabajo de conocimientoSistemas de automatización de oficinasSistemas de procesamiento de transaccionesCSCWSonesadministrativaSistemas de trabajo deSistemas de ae transaccionesS i s t e m a s i n a l á mb r i cosS i s t e m a s e mpresarialesSistemas Web y de comercio electrónicoFIGURA 1.2Los analistas de sistemas necesitanestar conscientes de que al integrartecnologías se ven afectados todoslos tipos de usuarios y sistemas.www.xlibros.com
CAPÍTULO 1 • SISTEMAS, ROLES Y METODOLOGÍAS DE DESARROLLO 53. Se puede mejorar la utilidad y capacidad de uso del diseño de la interfaz.4. Se puede expandir un sistema globalmente en vez de permanecer en el entorno local, con lo cual se puedeestablecer contacto con personas en ubicaciones remotas sin preocuparse por la zona horaria en la que seencuentren.Sistemas empresarialesMuchas organizaciones preveen beneficios potenciales derivados de la integración de diversos sistemas deinformación existentes en distintos niveles administrativos y dentro de diferentes funciones. Algunos autoresdescriben la integración como arquitectura orientada a servicios (SOA), la cual existe en capas. Los sistemasempresariales conformarían la capa superior. Estos sistemas, también conocidos como sistemas de planificaciónde recursos empresariales (ERP), están diseñados para llevar a cabo esta integración. Para establecer un ERP serequiere de un enorme compromiso y cambios en la organización. A menudo, los analistas de sistemas actúancomo consultores para los proyectos de ERP que utilizan software propietario. Dentro del software ERP popularestán los sistemas de SAP y Oracle. Algunos de estos paquetes están orientados hacia el proceso de migrar lasempresas a la Web. Por lo general, los analistas y algunos usuarios requieren capacitación, soporte y manteni-miento por parte del distribuidor para diseñar, instalar, mantener, actualizar y utilizar de manera apropiada unpaquete ERP específico.Sistemas para dispositivos inalámbricos y móvilesSe ha pedido a los analistas diseñar una amplia variedad de sistemas y aplicaciones para usuarios aventureros,como las orientadas a dispositivos inalámbricos y móviles como el iPhone y el iPod de Apple o la BlackBerry.Adicionalmente, algunos de ellos tal vez se enfrenten al reto de diseñar redes de comunicaciones estándar o ina-lámbricas que integren voz, video, mensajería de texto y correo electrónico a las intranets de una organización oa las extranets industriales. El comercio electrónico inalámbrico se conoce como m-Commerce o mCommerce(comercio móvil).Tal vez a usted le pidan diseñar sistemas de redes inalámbricas de área local (WLAN); redes de fidelidadinalámbrica, conocidas como Wi-Fi o redes personales inalámbricas que reúnan muchos tipos de dispositivosbajo el estándar Bluetooth. En configuraciones más avanzadas, tal vez los analistas tengan que diseñar agentesinteligentes: software capaz de aprender progresivamente las preferencias de los usuarios para posteriormentebrindarles ayuda basada en el conocimiento adquirido. Por ejemplo, mediante el uso de la tecnología pull, unagente inteligente puede buscar en la Web historias de interés para el usuario después de haber observado suspatrones de comportamiento a través del tiempo, y realizar búsquedas en la Web sin tener que estar solicitándoleinformación en forma continua.Software de código fuente abiertoEl software de código fuente abierto (OSS) es una alternativa al desarrollo de software tradicional, en donde elcódigo propietario se oculta a los usuarios. Con el OSS, los usuarios y programadores pueden estudiar, com-partir y modificar el código o las instrucciones de computadora. Las reglas de esta comunidad incluyen la ideade que cualquier modificación a los programas se debe compartir con todas las personas en el proyecto.El desarrollo de OSS constituye toda una filosofía y no sólo el proceso de crear software. A menudo, laspersonas involucradas en comunidades de OSS lo ven como una forma de ayudar a que las sociedades cam-bien. Algunos de los proyectos de código fuente abierto más conocidos son el servidor Web Apache, el nave-gador Mozilla Firefox y Linux, un sistema operativo de código fuente abierto similar a Unix.No obstante, sería simplista pensar en el OSS como un movimiento monolítico, además de que esto noayuda en nada a revelar qué tipo de usuarios o analistas están desarrollando proyectos de OSS y en qué se ba-san. Para ayudarnos a comprender el movimiento de software libre, algunos investigadores recientemente ca-tegorizaron las comunidades de software libre en cuatro tipos: ad hoc, estandarizado, organizado y comercial,además de contar con seis distintas dimensiones: estructura general, entorno, objetivos, métodos, comunidadde usuarios y licencias. Algunos investigadores argumentan que el OSS está en una encrucijada y que los gru-pos de OSS comercial y comunitario necesitan comprender dónde convergen y dónde puede haber conflictospotenciales.El desarrollo de software de código fuente abierto es útil para muchas aplicaciones que se ejecutan en di-versas plataformas, incluyendo dispositivos móviles y equipos de comunicación. Su empleo puede contribuira acelerar el proceso de estandarización de comunicaciones entre dispositivos. El uso extendido de OSS puedeayudar a aliviar la severa escasez de programadores, al poner las herramientas de programación en manosde estudiantes de países en desarrollo en menos tiempo del que se requeriría si estuvieran limitados al uso depaquetes propietarios, y puede ayudar a resolver grandes problemas mediante una colaboración intensa y ex-tensa.www.xlibros.com
6 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASNECESIDAD DEL ANÁLISIS Y DISEÑO DE SISTEMASEl análisis y diseño de sistemas que los analistas de sistemas llevan a cabo busca comprender qué necesitanlos humanos para analizar la entrada o el flujo de datos de manera sistemática, procesar o transformar losdatos, almacenarlos y producir información en el contexto de una organización específica. Mediante unanálisis detallado, los analistas buscan identificar y resolver los problemas correctos. Además, el análisis ydiseño de sistemas se utiliza para analizar, diseñar e implementar las mejoras en el apoyo para los usuariosy las funciones de negocios que se puedan llevar a cabo mediante el uso de sistemas de información compu-tarizados.Si un sistema se instala sin una planificación apropiada, a menudo los usuarios quedan muy insatisfechos ydejan de usar el sistema. El análisis y diseño añade estructura a los sistemas, y constituye una actividad costosaque de otra manera se realizaría al azar. Se puede considerar como una serie de procesos que se llevan a cabo enforma sistemática para mejorar una empresa mediante el uso de sistemas de información computarizados. El aná-lisis y diseño de sistemas implica trabajar con los usuarios actuales y eventuales de los sistemas de informaciónpara ofrecerles soporte en su empleo de las tecnologías en un entorno organizacional.La participación del usuario en el proyecto de sistemas es imprescindible para el desarrollo exitoso de lossistemas de información computarizados. Los analistas de sistemas, cuyos roles en la organización analizaremosa continuación, son el otro componente esencial para desarrollar sistemas de información útiles.Los usuarios avanzan al primer plano a medida que los equipos de desarrollo de software se internacionali-zan más en cuanto a su composición. Esto significa que hay más énfasis en trabajar con los usuarios de software;en realizar un análisis de su empresa, sus problemas y objetivos; y en comunicar el análisis y diseño del sistemaplanificado a todos los involucrados.Las nuevas tecnologías también impulsan la necesidad del análisis de sistemas. Ajax (JavaScript asíncronoy XML) no es un nuevo lenguaje de programación, sino una técnica que utiliza los lenguajes existentes para ha-cer que las páginas Web funcionen en forma más parecida a un programa de aplicación de escritorio tradicional.Los analistas se enfrentarán a la tarea de crear y rediseñar páginas Web que utilicen tecnologías Ajax. Los nue-vos lenguajes de programación, como el marco de trabajo Web de código fuente abierto conocido como Rubyon Rails, una combinación entre lenguaje de programación y generador de código para crear aplicaciones Web,requerirá de más análisis.ROLES DEL ANALISTA DE SISTEMASEl analista de sistemas evalúa en forma sistemática cómo interactúan los usuarios con la tecnología y cómooperan las empresas, para lo cual examina los procesos de entrada/salida de los datos y la producción deinformación con la intención de mejorar los procesos organizacionales. Muchas mejoras implican un mejorsoporte de las tareas de trabajo de los usuarios y las funciones empresariales mediante el uso de sistemas deinformación computarizados. Esta definición enfatiza el uso de una metodología sistemática para analizar(y potencialmente mejorar) lo que ocurre en el contexto específico que los usuarios experimentan y las empre-sas crean.Nuestra definición de un analista de sistemas es necesariamente amplia. El analista debe ser capaz de traba-jar con personas de todo tipo y tener experiencia en cuanto al trabajo con computadoras. El analista desempeñamuchos roles y algunas veces tiene que lidiar con varios al mismo tiempo. Los tres principales roles del analistade sistemas son como consultor, experto de soporte y agente de cambios.El analista de sistemas como consultorCon frecuencia el analista de sistemas actúa como consultor de sistemas para las personas y sus empresas y, porende, pueden llegar a contratarlo específicamente para lidiar con las cuestiones relacionadas con los sistemasde información dentro de la empresa. Dicha contratación puede ser una ventaja, ya que los consultores externospueden proveer una perspectiva fresca de la cual carezcan otras personas en la organización. También implicaque los analistas externos están en desventaja, ya que alguien de fuera nunca podrá conocer la verdadera culturaorganizacional. Como consultor externo, usted dependerá en gran parte de los métodos sistemáticos que el librodescribe para analizar y diseñar sistemas de información apropiados para los usuarios que trabajan en una em-presa en particular. Además se basará en los usuarios de los sistemas de información para que le ayuden a com-prender la cultura organizacional desde los puntos de vista de los demás.El analista de sistemas como experto de soporteComo empleado de una empresa, tal vez le toque desempeñarse como experto en soporte en algún puesto desistemas. En este rol, el analista se basa en su experiencia profesional sobre hardware y software y su uso en loswww.xlibros.com
CAPÍTULO 1 • SISTEMAS, ROLES Y METODOLOGÍAS DE DESARROLLO 7O P O R T U N I D A D D E C O N S U L T O R Í A 1 . 1Contratación saludable: se solicita ayuda para el comercio electrónico“Le agradará saber que presionamos mucho a la gerencia paracontratar un nuevo analista de sistemas especializado en el desarro-llo de comercio electrónico”, dice Al Falfa, analista de sistemas dela cadena internacional Marathon Vitamin Shops, con múltiplespuntos de venta, quien se reunirá con su extenso equipo de analistasde sistemas para decidir sobre las cualidades que deberá poseer elnuevo miembro de su equipo. Al continúa: “De hecho, les emocionótanto la posibilidad de que nuestro equipo ayude a migrar a Mara-thon a una estrategia de comercio electrónico que dijeron que debe-ríamos empezar a buscar ahora y no esperar hasta otoño”.Ginger Rute, una de las analistas, asiente diciendo: “La de-manda de desarrolladores de sitios Web aún sobrepasa a la oferta.Debemos movernos con rapidez. Creo que el nuevo miembro denuestro equipo debe tener experiencia en modelado de sistemas,JavaScript, C++ y Rational Rose, y debe estar familiarizado conAjax, entre otras cosas”.Al mira sorprendido la extensa lista de habilidades de Gingery luego responde: “Bueno, sin duda podríamos basarnos en eso.Pero también me gustaría una persona con conocimientos de nego-cios. La mayoría de los recién egresados tienen sólidas habilidadesde programación, pero también deben saber sobre contabilidad,inventarios y distribución de bienes y servicios”.Vita Ming, la analista más reciente del grupo, finalmenteparticipa en la discusión: “Una de las razones por las que elegítrabajar con ustedes es que sentí que nos llevaríamos muy bien.Como tenía otras oportunidades, analicé con mucho cuidado laatmósfera de aquí. Hasta donde he visto, somos un grupo amigable.Debemos asegurarnos de contratar a alguien con buena personali-dad y que se acople bien a nosotros”.Al asiente y continúa: “Vita tiene razón. El nuevo miembrodebe ser capaz de comunicarse bien tanto con nosotros como con losclientes de la empresa. Siempre nos estamos comunicando de unaforma u otra, por medio de presentaciones formales, dibujandodiagramas o entrevistando usuarios; si comprenden el proceso detoma de decisiones, el trabajo será más sencillo. Asimismo, Mara-thon está interesada en integrar el comercio electrónico en todas lasactividades comerciales. Necesitamos alguien que por lo menostenga una noción de la importancia estratégica de la Web. El diseñode páginas es una parte muy pequeña de ello”.Ginger interviene de nuevo con una dosis saludable de sen-tido práctico y dice: “Dejemos eso a la administración. Yo sigopensando que el nuevo miembro debe ser un buen programador”.Después delibera en voz alta: “Me pregunto, ¿qué tan importanteserá el UML?”.Después de escuchar pacientemente la lista de deseos de todoslos demás, Carl Siem, uno de los analistas en jefe habla bromeando:“¡Mejor deberíamos averiguar si Supermán está disponible!”.Mientras todos en el grupo comparten risas, Al ve una oportu-nidad de intentar consenso y dice: “Ya escuchamos varias cualida-des. Ahora hagamos, cada uno de nosotros, una lista de lascualidades que personalmente creemos deba poseer la nueva per-sona encargada del desarrollo de comercio electrónico. Comparti-remos las listas y seguiremos discutiendo hasta que podamosdescribir a la persona con el detalle suficiente como para enviar ladescripción al grupo de recursos humanos para que la procesen.”¿Qué cualidades debería estar buscando el equipo al contra-tar al nuevo miembro del equipo de desarrollo de comercio elec-trónico? ¿Es más importante conocer lenguajes específicos o tenerla aptitud de aprender a usar lenguajes y paquetes de software conrapidez? ¿Qué tan importante es que la persona a contratar tengaciertos conocimientos básicos de negocios? ¿Deben todos losmiembros del equipo poseer competencias y habilidades idénti-cas? ¿Qué rasgos de personalidad o carácter son deseables en unanalista de sistemas que trabaje en el desarrollo de comercio elec-trónico?negocios. A menudo este trabajo no es un verdadero proyecto de sistemas, sino que supone una pequeña modifi-cación o decisión que afecta a un solo departamento.Como experto en soporte usted no administra el proyecto; simplemente actúa como recurso para quienes loadministran. Si usted es un analista de sistemas empleado por una organización de manufactura o de servicios,tal vez muchas de sus actividades diarias correspondan a este rol.El analista de sistemas como agente de cambioEl rol más extenso y responsable del analista de sistemas es el de agente de cambio, ya sea interno o externo,para la empresa. Como analista, usted actúa como un agente de cambio cada vez que realiza alguna de las ac-tividades en el ciclo de vida del desarrollo de sistemas (que veremos en la siguiente sección) y está presente einteractúa con los usuarios y la empresa durante un periodo extendido (de dos semanas hasta más de un año).Podemos definir a un agente de cambio como una persona que actúa como catalizador para el cambio, desarrollaun plan de cambio y trabaja con otros para facilitarlo.Su presencia en la empresa genera un cambio; como analista de sistemas debe reconocer este hecho y utili-zarlo como punto inicial para su análisis. Debe interactuar con los usuarios y la administración (si no son lo mismo)desde las primeras etapas del inicio de su proyecto, pues sin su ayuda usted no podrá comprender qué necesitanpara apoyar su trabajo en la organización, y no se podrá llevar a cabo el verdadero cambio.www.xlibros.com
8 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMAS176 54Desarrolloy documentacióndel software322 Determinación de losrequerimientos humanosde informaciónAnálisis de lasnecesidadesdel sistemaDiseñodel sistemarecomendadoPruebay mantenimientodel sistemaImplementacióny evaluacióndel sistemaIdentificación de los problemas,oportunidades y objetivosFIGURA 1.3Las siete fases del ciclo dedesarrollo de sistemas (SDLC).Si el cambio (es decir, las mejoras que se pueden realizar en la empresa por medio de los sistemas de infor-mación) parece garantizado después del análisis, el siguiente paso es desarrollar un plan junto con las personasque deben llevarlo a cabo. Una vez que se llega a un consenso en cuanto al cambio que se debe realizar, usteddebe interactuar en forma constante con todos los que vayan a cambiar.En el rol de agente de cambio, un analista de sistemas aboga por una vía particular de cambio involucradacon el uso de sistemas de información. También enseña a los usuarios el proceso del cambio, ya que los cambiosen el sistema de información no ocurren por separado, sino que producen cambios consecuentes en el resto de laorganización.Cualidades del analista de sistemasA partir de las anteriores descripciones de roles, es fácil deducir que un analista de sistemas exitoso debe poseerun amplio rango de cualidades. Aunque los perfiles pueden variar de un caso específico a otro, hay ciertas cuali-dades que la mayoría de los analistas de sistemas parecen tener.Por encima de todo, el analista es un solucionador de problemas: una persona que ve el análisis de losproblemas como un reto y se divierte al idear soluciones factibles. Cuando sea necesario, el analista debe tenerla capacidad de lidiar de manera sistemática con la situación existente mediante la aplicación habilidosa deherramientas, técnicas y experiencia. El analista también debe ser un comunicador capaz de crear relacionessignificativas con otras personas durante periodos extendidos de tiempo. Los analistas de sistemas necesitanser capaces de comprender las necesidades de los humanos al interactuar con la tecnología, además de quenecesitan suficiente experiencia con las computadoras como para programar, comprender las capacidades delas computadoras, deducir los requerimientos de información de los usuarios y comunicar lo que se necesita alos programadores. También deben poseer una sólida ética personal y profesional para poder dar forma a lasrelaciones con sus clientes.El analista de sistemas debe ser un individuo disciplinado y motivado, y tener capacidad para coordinartanto a personas como recursos variados para llevar a cabo los proyectos. El análisis de sistemas es una carreraexigente, pero como compensación siempre está en continua evolución y ofrece nuevos retos.EL CICLO DE VIDA DEL DESARROLLO DE SISTEMASEn este capítulo hemos hecho referencia a la metodología sistemática con la que los analistas llevan a cabo elanálisis y diseño de los sistemas de información. Gran parte de ello se expresa en lo que conocemos como el ciclode vida del desarrollo de sistemas (SDLC). El SDLC es una metodología en fases para el análisis y diseño, deacuerdo con la cual los sistemas se desarrollan mejor al utilizar un ciclo específico de actividades del analista ylos usuarios.Los analistas no se han puesto de acuerdo sobre la cantidad de fases que hay en el SDLC, pero por lo ge-neral alaban su metodología organizada. En este libro vamos a dividir el ciclo en siete fases, como se muestraen la figura 1.3. Aunque cada fase se presenta de manera discreta, en realidad nunca se puede llevar a cabocomo un paso separado, sino que varias actividades pueden ocurrir al mismo tiempo, e incluso se pueden re-petir.www.xlibros.com
CAPÍTULO 1 • SISTEMAS, ROLES Y METODOLOGÍAS DE DESARROLLO 9Incorporación de las consideraciones de la interacción humano-computadoraEn años recientes, el estudio de la interacción humano-computadora (HCI) se ha vuelto cada vez más impor-tante para los analistas de sistemas. Aunque la definición sigue evolucionando, los investigadores caracterizana la HCI como el “aspecto de una computadora que permite las comunicaciones e interacciones entre ella y loshumanos. Es el nivel de la computadora que está entre ella y los humanos” (Zhang, Carey, Te’eni & Tremaine,2005, p. 518). Los analistas que utilizan una metodología HCI se enfocan en las personas en vez del trabajoa realizar o la TI involucrada. Su metodología para un problema es multifacética, ya que analiza los “factoreshumanos ergonómicos, cognitivos, afectivos y de comportamiento involucrados en las tareas de los usuarios,los procesos de solución de problemas y el contexto de la interacción” (Zhang, Carey, Te’eni & Tremaine,2005, p. 518). La interacción entre humano y computadora se concentra en las necesidades humanas en vezde enfocarse primero en las necesidades de la organización y del sistema. Los analistas que adoptan los prin-cipios de la HCI examinan una amplia variedad de necesidades en el contexto de los usuarios humanos queinteractúan con la tecnología de información para completar sus tareas y resolver problemas. Aquí tambiénse toman en cuenta los factores físicos o ergonómicos, los cognitivos relacionados con la facilidad de uso, losestéticos, los relacionados con una experiencia de uso agradable, y los aspectos conductuales relacionados conla utilidad del sistema.La HCI también se considera una metodología centrada en los humanos, que pone a las personas por encimade la estructura o cultura organizacional al crear sistemas. Cuando los analistas emplean la HCI como un lentepara filtrar el mundo, su trabajo posee una calidad distinta a la del trabajo de aquellos quienes no poseen estaperspectiva.Su carrera profesional se puede beneficiar gracias a la sólida comprensión de los fundamentos de la HCI.La demanda de analistas capaces de incorporar la HCI al proceso de desarrollo de sistemas sigue en aumento, amedida que cada vez más empresas se dan cuenta de que la calidad de los sistemas y la calidad de la vida laboralse pueden mejorar mediante el empleo de una metodología centrada en los humanos desde el inicio de un pro-yecto.La aplicación de los principios de la interacción humano-computadora implica descubrir y resolver las frus-traciones que los usuarios experimentan al usar tecnologías de información, entre las que se cuenta la sospechade que el analista malentendió el trabajo que se iba a realizar, las tareas involucradas y cuál era la mejor ma-nera de apoyarlas; sensación de impotencia o falta de control al trabajar con el sistema; violaciones intencionalesa la privacidad; problemas al navegar por las pantallas y menús del sistema, y una discrepancia general entre elsistema que se diseñó y la forma en que los mismos usuarios piensan con respecto a sus procesos laborales.Cuando los analistas de sistemas adoptan una metodología HCI, pueden erradicar o minimizar las malasapreciaciones y los errores de diseño que provocan el rechazo de los usuarios hacia los nuevos sistemas o suabandono poco tiempo después de la implementación.Los investigadores de la HCI observan ventajas al incluir la HCI en cada fase del SDLC. Es una metodolo-gía que vale la pena usar y para reflejar esto trataremos de llevar los intereses humanos en forma explícita a cadafase del SDLC. Como estudiante de análisis de sistemas, usted también puede ofrecer una nueva perspectiva alSDLC para identificar las oportunidades que tienen los diseñadores de lidiar con las cuestiones de la HCI y lasformas en que los usuarios pueden tener una participación más primordial en cada fase del SDLC. En el capítulo 14nos dedicaremos a examinar el rol del analista de sistemas en cuanto a diseñar sistemas e interfaces centrados enlos humanos desde la perspectiva de la HCI.Identificación de los problemas, oportunidades y objetivosEn esta primera fase del ciclo de vida del desarrollo de sistemas, el analista se encarga de identificar correctamentelos problemas, las oportunidades y los objetivos. Esta etapa es imprescindible para el éxito del resto del proyecto:ya que a nadie le gusta desperdiciar el tiempo resolviendo un problema mal caracterizado.En la primera fase el analista debe analizar con honestidad lo que está ocurriendo en la empresa. Después,junto con otros miembros de la organización, debe comenzar a señalar los problemas. A menudo, otras personashabrían planteado también estos problemas, razón por la cual se llamó en un principio al analista. Las oportuni-dades residen en las situaciones que el analista cree poder mejorar mediante el uso de sistemas de informacióncomputarizados. Al aprovechar estas oportunidades, la empresa puede obtener una ventaja competitiva o estable-cer un estándar en la industria.La identificación de los objetivos también es un componente importante de la primera fase. El analista debedescubrir primero qué trata de hacer la empresa; después debe ser capaz de determinar si alguno de los aspec-tos de las aplicaciones de los sistemas de información puede ayudar a que la empresa logre sus objetivos al en-frentar problemas u oportunidades específicos.Las personas involucradas en la primera fase son los usuarios, los analistas y los administradores de sistemasque coordinan el proyecto. En esta fase las actividades consisten en entrevistar a los encargados de la adminis-tración de los usuarios, sintetizar el conocimiento obtenido, estimar el alcance del proyecto y documentar loswww.xlibros.com
10 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASresultados. El resultado de esta fase es un informe de viabilidad, el cual contiene la definición de un problema ysintetiza los objetivos. Después, la administración de la empresa debe tomar una decisión en cuanto a proceder ono con el proyecto propuesto. Si el grupo de usuarios no tiene suficientes fondos en su presupuesto o desea hacerfrente a problemas que no están relacionados, o si los problemas no requieren un sistema computacional, tal vezse pueda recomendar una solución distinta y el proyecto de sistemas no continúe.Determinación de los requerimientos de información del factor humanoLa siguiente fase a la que entra el analista es determinar las necesidades de los usuarios involucrados, me-diante el uso de varias herramientas, para comprender la forma en que interactúan en el contexto laboral consus sistemas de información actuales. El analista utilizará métodos interactivos como entrevistas, muestreos einvestigación de datos duros, además de los cuestionarios y los métodos discretos, como observar el compor-tamiento de los encargados al tomar las decisiones y sus entornos de oficina, y los métodos integrales como lacreación de prototipos.El analista utilizará estos métodos para plantear y responder muchas preguntas relacionadas con la interacciónhumano-computadora (HCI), incluyendo preguntas tales como: “¿Cuáles son las fortalezas y limitaciones físicas delos usuarios?”, o dicho en otras palabras, “¿qué hay que hacer para que el sistema sea perceptible, legible y seguro?”,“¿cómo puede diseñarse el nuevo sistema para que sea fácil de usar, aprender y recordar?”, “¿cómo puede el sistemaser agradable o incluso divertido de usar?”, “¿cómo puede el sistema apoyar las tareas laborales individuales de unusuario y buscar nuevas formas de hacerlas más productivas?”.En la fase de requerimientos del SDLC, el analista se esfuerza por comprender qué información requierenlos usuarios para realizar sus trabajos. En este punto el analista examina cómo hacer que el sistema sea útil paralas personas involucradas. ¿Cómo puede el sistema ofrecer un mejor apoyo para las tareas individuales que sedeben llevar a cabo? ¿Qué nuevas tareas habilita el nuevo sistema que los usuarios no podían realizar sin él?¿Cómo se puede crear el sistema de manera que extienda las capacidades de un usuario más allá de lo provistopor el sistema anterior? ¿Cómo puede el analista crear un sistema gratificante para los trabajadores?Las personas involucradas en esta fase son los analistas y los usuarios, por lo general los gerentes y los tra-bajadores de operaciones. El analista de sistema debe conocer los detalles sobre las funciones del sistema actual:el quién (las personas involucradas), el qué (la actividad de la empresa), el dónde (el entorno en el que se lleva acabo el trabajo), el cuándo (la coordinación) y el cómo (de qué manera particular se realizan los procedimientosactuales) de la empresa a la que está estudiando. Después, el analista debe preguntar por qué la empresa utiliza elsistema actual. Puede haber buenas razones por las cuales la empresa trabaje con los métodos actuales, razón porla que se deben tener en cuenta al diseñar un nuevo sistema.El desarrollo ágil es una metodología orientada a objetos (OOA) para el desarrollo de sistemas, en la cual seincluye un método de desarrollo (junto con la generación de los requerimientos de información) así como herra-mientas de software. En el capítulo 6 veremos este tipo de desarrollo, junto con los prototipos (hay más informa-ción sobre las metodologías orientadas a objetos en el capítulo 10).No obstante, si la razón de seguir con las operaciones actuales es que “siempre se ha hecho de esa forma”, elanalista querrá mejorar los procedimientos. Al terminar esta fase, el analista deberá comprender la forma en que losusuarios realizan su trabajo al interactuar con una computadora y deberá empezar a comprender cómo mejorar lautilidad y capacidad de uso del nuevo sistema. También deberá saber cómo funciona la empresa y tener informacióncompleta sobre personas, objetivos, datos y procedimientos involucrados.Análisis de las necesidades del sistemaLa siguiente fase que debe llevar a cabo el analista de sistemas involucra el análisis de las necesidades del sis-tema. Aquí también hay herramientas y técnicas especiales que ayudan al analista a realizar las determinacionesde los requerimientos. Las herramientas como los diagramas de flujo de datos (DFD) para graficar la entrada, losprocesos y la salida de las funciones de la empresa, o los diagramas de actividad o de secuencia para mostrar lasecuencia de los eventos, sirven para ilustrar a los sistemas de una manera estructurada y gráfica. A partir de losdiagramas de flujo de datos, de secuencia u otros tipos de diagramas se debe desarrollar un diccionario de datospara enlistar todos los elementos de datos utilizados en el sistema, así como sus especificaciones.Durante esta fase, el analista de sistemas también analiza las decisiones estructuradas llevadas a cabo. Lasdecisiones estructuradas son aquellas para las que se pueden determinar condiciones, alternativas de condición,acciones y reglas de acción. Hay tres métodos principales para el análisis de las decisiones estructuradas: inglés/español estructurado, tablas de decisión y árboles de decisión.En este punto del SDLC, el analista de sistemas prepara una propuesta de sistemas en la que sintetiza todolo que ha averiguado sobre los usuarios, la capacidad de uso y la utilidad de los sistemas actuales; incluye unanálisis de costo-beneficio de las alternativas y, si se requiere, hace recomendaciones. Si la administración aceptauna de las recomendaciones, el análisis continúa por esa vía. Cada problema de sistemas es único, por lo quenunca hay sólo una solución correcta. La manera en que se formule una recomendación o solución depende dewww.xlibros.com
CAPÍTULO 1 • SISTEMAS, ROLES Y METODOLOGÍAS DE DESARROLLO 11las cualidades individuales y la capacitación profesional de cada analista, y de su interacción con los usuarios enel contexto de su entorno laboral.Diseño del sistema recomendadoEn la fase de diseño del SDLC, el analista de sistemas utiliza la información recolectada antes para realizar el diseñológico del sistema de información. El analista diseña los procedimientos para ayudar a que los usuarios introduzcanlos datos con precisión, de manera que los datos que entren al sistema de información sean los correctos. Además, elanalista debe ayudar a que los usuarios completen la entrada de datos efectiva al sistema de información medianteel uso de las técnicas del buen diseño de formularios y páginas Web o pantallas.Parte del diseño lógico del sistema de información es idear la HCI. La interfaz conecta al usuario con elsistema, por lo que es extremadamente importante. La interfaz del usuario se diseña con ayuda de los usuariospara asegurar que el sistema sea perceptible, legible y seguro, así como atractivo y divertido de usar. Ejemplos deinterfaces de usuario físicas son el teclado (para escribir las preguntas y respuestas), los menús en pantalla (paraobtener los comandos de los usuarios) y varios tipos de interfaces gráficas de usuario (GUI) basadas en un ratóno una pantalla táctil.La fase de diseño también incluye el diseño de bases de datos que almacenarán gran parte de los datos nece-sarios para los encargados de tomar las decisiones en la organización. Los usuarios se benefician de una base dedatos bien organizada que sea lógica para ellos y se corresponda con la forma en que ven su trabajo. En esta fase,el analista también trabaja con los usuarios para diseñar una salida (ya sea en pantalla o impresa) que cumpla consus necesidades de información.Por último, el analista debe diseñar controles y procedimientos de respaldo para proteger el sistema y losdatos, y para producir paquetes de especificación de programas para los programadores. Cada paquete debecontener los diseños de las entradas y las salidas, las especificaciones de los archivos y los detalles sobre el pro-cesamiento; también puede incluir árboles o tablas de decisión, UML o diagramas de flujo de datos, junto conlos nombres y las funciones de cualquier código previamente escrito dentro de la empresa o que utilice código uotras bibliotecas de clases.Desarrollo y documentación del softwareEn la quinta fase del SDLC, el analista trabaja con los programadores para desarrollar el software original reque-rido. Durante ella, el analista desarrolla junto con los usuarios una documentación efectiva para el software, inclu-yendo manuales de procedimientos, ayuda en línea, sitios Web con preguntas frecuentes (FAQ) y archivos Léame(Read Me) para incluir con el nuevo software. Como los usuarios están involucrados desde el principio, la fase dedocumentación debe lidiar con las preguntas que hicieron y resolvieron junto con el analista. La documentaciónindica a los usuarios cómo deben usar el software y qué deben hacer en caso de que ocurran problemas.Los programadores desempeñan un rol clave en esta fase, ya que diseñan, codifican y eliminan los erroressintácticos de los programas de computadora. Para asegurar la calidad, un programador puede llevar a cabo unrecorrido por el diseño o por el código para explicar las porciones complejas del programa a un equipo formadopor otros programadores.Prueba y mantenimiento del sistemaAntes de utilizar el sistema de información, se debe probar. Es mucho menos costoso detectar los problemas an-tes de entregar el sistema a los usuarios. Una parte del procedimiento de prueba es llevado a cabo por los progra-madores solos; la otra la realizan junto con los analistas de sistemas. Primero se completa una serie de pruebaspara señalar los problemas con datos de muestra y después se utilizan datos reales del sistema actual. A menudo,los planes de prueba se crean en las primeras etapas del SDLC y se refinan a medida que el proyecto progresa.El mantenimiento del sistema y la documentación de este mantenimiento empieza en esta fase y se lleva a cabode manera rutinaria durante toda la vida del sistema de información. Gran parte del trabajo rutinario del programa-dor consiste en el mantenimiento, por lo cual las empresas invierten una gran cantidad de dinero en este proceso.Ciertos procedimientos de mantenimiento, como las actualizaciones de los programas, se pueden llevar a cabo através del sitio Web del distribuidor. Muchos de los procedimientos sistemáticos que emplea el analista durante elSDLC pueden ayudar a asegurar que el mantenimiento siempre se mantenga en el nivel mínimo necesario.Implementación y evaluación del sistemaEn esta última fase del desarrollo de sistemas, el analista ayuda a implementar el sistema de información. En estafase hay que capacitar a los usuarios para operar el sistema. Los distribuidores se encargan de una parte de lacapacitación, pero la supervisión de la capacitación es responsabilidad del analista de sistemas. Además, el ana-lista necesita planear una conversión sin problemas del sistema antiguo al nuevo. Este proceso incluye convertirlos archivos de los formatos anteriores a los nuevos, o crear una base de datos, instalar equipo y llevar el nuevosistema a producción.www.xlibros.com
12 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASLa evaluación se incluye como parte de esta fase final del SDLC principalmente por cuestiones informativas.En realidad, la evaluación se realiza durante cada fase. El criterio clave que debemos satisfacer es si los usuariosprevistos están utilizando el sistema.Hay que tener en cuenta que a menudo el trabajo relacionado con los sistemas es cíclico. Cuando un analistatermina una fase del desarrollo de sistemas y continúa con la siguiente, al descubrir un problema tal vez se veaobligado a regresar a la fase anterior y modificar el trabajo que realizó ahí.El impacto del mantenimientoUna vez instalado el sistema hay que darle mantenimiento, lo cual implica que tal vez haya que realizar mo-dificaciones en los programas de computadora y mantenerlos actualizados. La figura 1.4 muestra la cantidadpromedio de tiempo que se invierte en el mantenimiento de una instalación de MIS común. Las estimacionesdel tiempo invertido por los departamentos en el mantenimiento varían desde un 48 hasta un 60 por ciento deltiempo total invertido en el desarrollo de los sistemas. Queda muy poco tiempo libre para el desarrollo de nuevossistemas. A medida que aumenta el número de programas escritos, también aumenta la cantidad de manteni-miento que se requiere.FIGURA 1.MACWindows ejecutándose en una Mac mediante el software de virtualización conocido como VM Fusion.A T R A C T I V O D E L A M A CEn el hogar y en nuestras visitas a los campus de universidades y empresas en todo el mundo hemos observado que cadavez más estudiantes y las organizaciones muestran un interés por la Mac. Por ello pensamos que sería interesante mos-trar algunas de las opciones que tiene un diseñador de sistemas al respecto de esta plataforma. Al momento de escribireste libro, aproximadamente una de cada siete computadoras personales que se compran en los Estados Unidos es Mac.Las Mac son equipos de calidad basados en procesadores Intel que ejecutan un competente sistema operativo nativo,pero también pueden ejecutar Windows, por lo que en definitiva cualquier cosa que se pueda hacer en una PC se puedehacer también en una Mac. Una forma de ejecutar Windows es arrancar directamente la Mac con el sistema Windows(una vez instalado); otra forma es usar software de virtualización como VM Fusion, el cual mostramos en la figura1.MAC.Los seguidores de las Mac citan muchas razones por las cuales las utilizan, incluyendo una mejor seguridad inte-grada en el sistema operativo de la Mac, respaldos inteligentes mediante la máquina de tiempo integrada, la multitud deaplicaciones ya incluidas, la confiabilidad de la configuración y el trabajo en red, y la capacidad de sincronizar las Maccon otros equipos Mac y con el iPhone. Para nosotros, la razón más convincente es su diseño en sí.www.xlibros.com
CAPÍTULO 1 • SISTEMAS, ROLES Y METODOLOGÍAS DE DESARROLLO 13Mantenimiento de lossistemas existentes60%Nuevos sistemasy otras actividades40%FIGURA 1.4Algunos investigadores estimanque la cantidad de tiempoinvertido en el mantenimiento desistemas puede ser hasta del 60por ciento del tiempo totalinvertido en los proyectos desistemas.El mantenimiento se lleva a cabo por dos razones. La primera es para corregir los errores de software. Sinimportar qué tan minuciosas sean las pruebas en el sistema, se pueden infiltrar errores o ‘bugs’ en los programascomputacionales. Los ‘bugs’ en el software comercial de PC se documentan comúnmente como “anomalías co-nocidas” y se corrigen al momento de liberar nuevas versiones, o liberando una versión provisional. En el soft-ware personalizado (también conocido como software hecho a la medida), los ‘bugs’ se deben corregir a medidaque se van detectando.La otra razón de realizar mantenimiento en los sistemas es para mejorar las capacidades del software enrespuesta a las necesidades cambiantes de la organización, que por lo general implica una de las siguientes tressituaciones:1. Con frecuencia los usuarios solicitan características adicionales a medida que se familiarizan con el sistemacomputacional y sus capacidades.2. La empresa cambia con el tiempo.3. El hardware y el software cambian a un ritmo acelerado.La figura 1.5 muestra la cantidad de recursos (por lo general tiempo y dinero) que se invierten en el de-sarrollo y mantenimiento de sistemas. El área bajo la curva representa la cantidad total invertida en dólares.Podemos ver que, a través del tiempo, es probable que el costo total del mantenimiento exceda al costo deldesarrollo de sistemas. En cierto punto es más factible realizar un nuevo estudio de sistemas, debido a que elcosto de continuar con el mantenimiento es sin duda mayor que el de crear un sistema de información total-mente nuevo.En resumen, el mantenimiento es un proceso continuo que se realiza a lo largo del ciclo de vida de un sis-tema de información. Una vez que se instala el sistema de información, por lo general el mantenimiento implicacorregir los errores del programa que no se habían detectado antes. Una vez corregidos, el sistema se acerca a unestado estable para proveer un servicio confiable a sus usuarios. Durante este periodo, el mantenimiento puedeconsistir en eliminar unos cuantos ‘bugs’ que no se detectaron antes y actualizar el sistema con mejoras menores.Sin embargo, a medida que pasa el tiempo y evolucionan tanto la empresa como la tecnología, el esfuerzo demantenimiento aumenta en forma considerable.Cantidadde recursosconsumidos,tiempoy dineroDesarrollode sistemas‘Bugs’ subsecuentesa la instalación Modificacionesmenores debido a‘bugs’ y mejorasCambios importantestanto en la empresacomo en la tecnologíaTiempoDía de lainstalaciónFIGURA 1.5Consumo de los recursos duranteel tiempo de vida del sistema.www.xlibros.com
14 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASUSO DE HERRAMIENTAS CASELos analistas que adoptan la metodología SDLC a menudo se benefician de las herramientas de productividad,conocidas como herramientas de Ingeniería de Software Asistida por Computadora (CASE), las cuales se crea-ron de manera explícita para mejorar el trabajo rutinario a través del uso del soporte automatizado. Los analistasemplean herramientas CASE para aumentar la productividad, comunicarse con los usuarios de una manera másefectiva e integrar el trabajo que realizan en el sistema, desde el inicio hasta el fin del ciclo de vida.Visible Analyst (VA) es un ejemplo de herramienta CASE que permite a los analistas de sistemas realizarplanificación, análisis y diseño en forma gráfica para crear bases de datos y aplicaciones cliente/servidor comple-jas. Visible Analyst, aunado a otro producto de software conocido como Microsoft Visio, permite a los usuariosdibujar y modificar diagramas con facilidad.Los analistas y usuarios en general reportan que las herramientas CASE les ofrecen un medio de comu-nicación relacionado con el sistema durante su conceptualización. Mediante el uso de soporte automatizadoque incluye resultados en pantalla, los clientes pueden ver de inmediato la forma en que fluyen los datos ycómo se representan otros conceptos del sistema, para así poder solicitar correcciones o modificaciones quehubieran requerido de mucho más tiempo si se utilizaran herramientas anteriores.Algunos analistas marcan la diferencia entre las herramientas CASE superiores e inferiores. Una herra-mienta CASE superior permite al analista crear y modificar el diseño del sistema. Toda la información sobreel proyecto se almacena en una enciclopedia conocida como repositorio CASE, una extensa colección deregistros, elementos, diagramas, pantallas, informes y demás información relacionada (vea la figura 1.6). Esposible producir informes del análisis mediante el uso de la información del repositorio para mostrar en quépartes está incompleto el diseño o dónde hay errores. Las herramientas CASE superiores también ayudan asustentar el modelado de los requerimientos funcionales de una organización, auxiliar a los analistas y usua-rios para dibujar los límites de un proyecto dado y ayudarlos a visualizar la forma en que el proyecto encajacon otras partes de la organización.Las herramientas CASE inferiores se utilizan para generar código fuente de computadora, con lo cual se eli-mina la necesidad de programar el sistema. La generación de código ofrece varias ventajas: 1) el sistema se puedeproducir con más rapidez que si se escribieran programas computacionales; 2) la cantidad de tiempo invertidoen el mantenimiento se reduce con la generación de código; 3) se puede generar código en más de un lenguajecomputacional, por lo que es más sencillo migrar los sistemas de una plataforma a otra; 4) la generación de có-digo provee una manera efectiva en costo de personalizar los sistemas que se compran a terceros distribuidorespara ajustarlos a las necesidades de la organización, y 5) el código generado está libre de los errores típicos delos programas computacionales.LA METODOLOGÍA ÁGILAunque este texto tiende a enfocarse en el SDLC —la metodología más utilizada en la práctica—, el analistadeberá reconocer algunas veces que la organización podría beneficiarse de una metodología alternativa. Tal vezrecientemente un proyecto de sistemas en el que se utilizaba una metodología estructurada falló o quizás lassubculturas de la organización, compuestas por varios grupos de usuarios distintos, parecen identificarse más conel uso de un método alternativo. Es imposible hacer justicia a estos métodos en un espacio pequeño; cada unomerece y ha inspirado sus propios libros e investigaciones. Sin embargo, mencionamos estas metodologías con laesperanza de que tome conciencia de que, bajo ciertas circunstancias, tal vez su organización quiera consideraruna alternativa o suplemento al análisis y diseño estructurado y al SDLC.La metodología ágil es una metodología de desarrollo de software que se basa en valores, principios y prác-ticas básicas. Los cuatro valores son comunicación, simpleza, retroalimentación y valentía. Recomendamos quelos analistas de sistemas adopten estos valores en todos los proyectos que emprendan y no sólo cuando adoptenla metodología ágil.Para poder terminar un proyecto, a menudo hay que realizar ciertos ajustes en la administración del mismo.En el capítulo 6 veremos que los métodos ágiles pueden asegurar que un proyecto se complete con éxito me-diante un ajuste en los importantes recursos de tiempo, costo, calidad y alcance. Cuando se incluyen estas cuatrovariables de control en forma apropiada en la planificación, hay un estado de equilibrio entre los recursos y lasactividades necesarias para completar el proyecto.Es más notable llevar las prácticas de desarrollo al extremo cuando se persiguen prácticas únicas para el de-sarrollo ágil. En el capítulo 6 hablaremos sobre cuatro prácticas ágiles básicas: liberaciones de versiones cortas,la semana de trabajo de 40 horas, hospedar un cliente en el sitio y utilizar programación en pareja. A primeravista estas prácticas parecen extremas, pero como veremos más adelante, podemos aprender ciertas leccionesimportantes al incorporar muchos de los valores y prácticas de la metodología ágil a los proyectos de análisis ydiseño de sistemas.www.xlibros.com
CAPÍTULO 1 • SISTEMAS, ROLES Y METODOLOGÍAS DE DESARROLLO 15AGREGAR CLIENTENÚMERO XXXXXXNOMBRE XXXXXXXXXXXXCALLE XXXXXXXXXXXXCIUDAD XXXXXXXXXXXXESTADO XXCP XXXXX-XXXXINFORME DEL ANÁLISIS DE VENTASDESCRIPCIÓNDEL ARTÍCULOVENTASTOTALESXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXZZ,ZZ9ZZ,ZZ9ZZ,ZZ9ZZ,ZZ9ZZ,ZZ9ZZ,ZZ9Diseño de pantallase informesDiagramas y modelosde sistemasDO WHILE NOT fin de archivoLeer registro del artículoIF artículo está bajo en existenciasImprimir orden de compraActualizar registro del artículoENDIFENDDODiccionario de datosy lógica de procesosAdministracióndel proyectoRequerimientos del sistema Agregar nuevos clientes Identificar los artículos que sevenden con lentitud y los quese venden con rapidez Introducir los pedidosde los clientes Analizar el saldo de créditodel cliente Mantener un inventario adecuadoEntregables Agregar la pantalla para el cliente Informe de análisis de artículos Pantalla de captura de pedidosde los clientes Pantalla de consultas de losclientes• Programa de órdenes decompra de los distribuidores Pronóstico estacionalNúmero +Descripción +Costo +Precio +Cantidad en existencia +Cantidad en pedido +Punto para reabastecer +Ventas mensuales +Ventas del año a la fechaArtículo =FIGURA 1.6El concepto de repositorio.Proceso de desarrollo para un proyecto ágilHay actividades y comportamientos que determinan la manera en que actúan los miembros del equipo y los clien-tes durante el desarrollo de un proyecto ágil. Dos palabras que caracterizan a un proyecto realizado mediante unametodología ágil son interactivo e incremental. Si examina la figura 1.7 podrá ver que hay cinco etapas: explo-ración, planeación, iteraciones para la liberación de la primera versión, puesta en producción y mantenimiento.Observe que las primeras tres flechas grises que iteran de vuelta a la caja “Iteraciones” simbolizan los cambiosincrementales creados por medio de los procesos repetidos de prueba y retroalimentación que en cierto momentoconducen a un sistema estable pero en evolución. Observe además que el ritmo de iteraciones aumenta una vezque se libera el producto. La flecha sale de la etapa de mantenimiento y regresa a la etapa de planeación, demanera que hay un ciclo continuo de retroalimentación que involucra a los clientes y al equipo de desarrollo amedida que se ponen de acuerdo para alterar el sistema en evolución.EXPLORACIÓN Durante ella usted explorará su entorno para evaluar su convicción de que puede y debe lidiarcon el problema mediante el desarrollo ágil, ensamblará el equipo y evaluará las habilidades de sus miembros.Esta etapa puede requerir desde unas cuantas semanas (si conoce de antemano a los miembros de su equipo y latecnología que va a usar) hasta unos cuantos meses (si todo es nuevo). También tendrá que examinar activamentewww.xlibros.com
16 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASPlaneaciónExploraciónMantenimientoIteraciones parala liberación de laprimera versiónPuesta en producciónLos métodos ágilesinvolucran al clienteen muchas iteracionesantes de liberarla primera versión ......e incrementan elritmo de iteracionesuna vez que se liberael producto.FIGURA 1.7Las cinco etapas del proceso dedesarrollo de modelado ágilmuestran que las iteracionesfrecuentes son esenciales para undesarrollo exitoso del sistema.las tecnologías potenciales necesarias para crear el sistema. Durante esta etapa debe practicar con la estimacióndel tiempo necesario para realizar varias tareas. En la exploración, los clientes también experimentan escribiendohistorias de los usuarios. El punto es hacer que el cliente refine una historia con el detalle suficiente como paraque usted pueda estimar en forma competente la cantidad de tiempo necesaria para crear la solución y convertirlaen el sistema que está planeando. Todo en esta etapa tiene que ver con adoptar una actitud juguetona y curiosahacia el entorno de trabajo, sus problemas, tecnologías y personas.PLANEACIÓN La siguiente etapa del proceso de desarrollo ágil se llama planeación. Al contrario de la primeraetapa, la planeación tal vez sólo requiera de unos cuantos días. En esta etapa, usted y sus clientes se ponen deacuerdo en una fecha, que puede ser cualquier día a partir de dos meses hasta medio año después de la fechaen curso, para entregar soluciones a sus problemas empresariales más estresantes (usted se concentrará en elconjunto más pequeño y valioso de historias). Si sus actividades de exploración fueron suficientes, esta etapadebe ser muy corta.Todo el proceso de planeación ágil se ha caracterizado mediante la idea de un juego de planeación segúnla idea de Beck. El juego de planeación establece reglas que pueden ayudar a formular la relación del equipo dedesarrollo ágil con sus clientes empresariales. Aunque las reglas forman una idea de cómo quiere usted que actúecada una de las partes durante el desarrollo, no están diseñadas para sustituir una relación. Son la base para creary mantener una relación.Entonces, utilizamos la metáfora de un juego. Para ello hablaremos en términos del objetivo del juego,la estrategia a perseguir, las piezas a mover y los jugadores involucrados. El objetivo del juego es maximizarel valor del sistema producido por el equipo ágil. Para poder averiguar el valor, usted debe deducir los costosde desarrollo y el tiempo, los gastos y la incertidumbre requeridos para que el proyecto de desarrollo puedacontinuar.La estrategia que persigue el equipo de desarrollo ágil siempre tiene una incertidumbre limitante (minimiza-ción del riesgo). Para hacer esto, el equipo diseña la solución más simple posible, pone el sistema en produccióntan pronto como sea posible, obtiene retroalimentación del cliente empresarial sobre lo que está funcionando yadapta su diseño a partir de ahí.Las tarjetas de historias se convierten en las piezas del juego de planeación que describen con brevedad latarea, proveen anotaciones y un área para rastrear las tareas.Hay dos jugadores principales en el juego de planeación: el equipo de desarrollo y el cliente empresarial. Nosiempre es fácil decidir qué grupo empresarial en particular será el cliente empresarial, ya que el proceso ágil eswww.xlibros.com
CAPÍTULO 1 • SISTEMAS, ROLES Y METODOLOGÍAS DE DESARROLLO 17un rol excepcionalmente exigente para el cliente. Los clientes deciden qué debe abordar primero el equipo de de-sarrollo. Sus decisiones establecerán prioridades y revisarán la funcionalidad durante todo el proceso.ITERACIONES PARA LA LIBERACIÓN DE LA PRIMERA VERSIÓN La tercera etapa en el proceso de desarrollo ágilestá compuesta por las iteraciones para la liberación de la primera versión. Por lo general éstas son iteraciones(ciclos de prueba, retroalimentación y modificación) de aproximadamente tres semanas de duración. Usted seesforzará en bosquejar toda la arquitectura del sistema, aun y cuando sólo esté en forma de bosquejo o esqueleto.Uno de los objetivos es realizar pruebas funcionales escritas por el cliente al final de cada iteración. Durantela etapa de las iteraciones también debe preguntarse si hay que alterar el itinerario de trabajo o si está lidiandocon demasiadas historias. Convierta cada iteración exitosa en pequeños rituales e involucre en ellos tanto a losclientes como a los desarrolladores. Celebre siempre su progreso aunque éste sea pequeño, debido a que estoforma parte de la cultura de motivar a todos a que trabajen lo más duro que puedan en el proyecto.PUESTA EN PRODUCCIÓN Durante esta fase se llevan a cabo varias actividades. El ciclo de retroalimentación seagiliza de manera que en vez de recibir retroalimentación por una iteración cada tres semanas, las revisiones desoftware se entregan en una semana. Puede instituir sesiones informativas diarias para que todos sepan lo quelos demás están haciendo. El producto se libera durante esta fase, pero se puede mejorar si se le agregan otrascaracterísticas. Poner un sistema en producción es un suceso emocionante; disponga de tiempo para celebrarcon sus compañeros de equipo la ocasión. Uno de los lemas de la metodología ágil con el que todos estamossinceramente de acuerdo es que ¡desarrollar sistemas debe ser divertido!MANTENIMIENTO Una vez liberado el sistema, debe seguir funcionando sin problemas. Es posible agregarcaracterísticas, considerar las sugerencias más riesgosas de los clientes y a rotar los miembros del equipo. Laactitud que usted debe tomar en este punto del proceso de desarrollo es más conservadora que en cualquier otro.Ahora tiene que desempeñar el papel de “guardián de la llama” en vez de ser el juguetón y curioso de la fase deexploración.ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADO A OBJETOSEl análisis y diseño de sistemas orientado a objetos (O-O) es una metodología diseñada para facilitar el desarro-llo de sistemas que deben cambiar con rapidez en respuesta a los entornos empresariales dinámicos. El capítulo10 le ayudará a comprender lo que es el análisis y diseño de sistemas orientado a objetos, la diferencia entre estametodología y la metodología estructurada del SDLC y cuándo puede ser apropiado utilizar una metodologíaorientada a objetos.Se cree que las técnicas orientadas a objetos funcionan bien en situaciones en las que los sistemas de in-formación complejos pasan a través de un continuo proceso de mantenimiento, adaptación y rediseño. Las me-todologías orientadas a objetos utilizan el estándar de la industria para modelar sistemas orientados a objetos,conocido como lenguaje de modelado unificado (UML), para descomponer un sistema en un modelo de casode uso.La programación orientada a objetos difiere de la programación tradicional por procedimientos en cuantoa que examina a los objetos que forman parte de un sistema. Cada objeto es una representación computacionalde una cosa o evento real. Los objetos pueden ser clientes, artículos, pedidos, etcétera. Los objetos se repre-sentan y agrupan mediante clases, las cuales son ideales para la reutilización y la facilidad de mantenimiento.Una clase define el conjunto de atributos y comportamientos compartidos que se encuentran en cada objeto dela clase.Las fases en el UML son similares a las del SDLC. Como estos dos métodos comparten un modelado rígidoy exigente, se realizan a un ritmo más lento y reflexivo que las fases del modelado ágil. El analista pasa por lasfases del problema y de identificación, una fase de análisis y una fase de diseño, como se muestra en la figura1.8. Aunque gran parte de los detalles específicos los veremos en los capítulos 2 y 10, los siguientes pasos mues-tran una descripción breve del proceso del UML.1. Definir el modelo de caso de uso.En esta fase, el analista identifica a los actores y los eventos principales iniciados por los actores.A menudo el analista empieza por dibujar un diagrama con figuras hechas con líneas que representan a losactores y flechas que muestran las relaciones entre ellos. A esto se le conoce como diagrama de caso de uso(capítulo 2) y representa el flujo estándar de eventos en el sistema. Después de esto, el analista por logeneral escribe un escenario de caso de uso (capítulo 2), que describe con palabras los pasos que se llevan acabo comúnmente.2. Durante la fase de análisis de sistemas, empezar a dibujar diagramas de UML.En la segunda fase (capítulo 10) el analista dibujará Diagramas de actividad, los cuales ilustran todas lasprincipales actividades en el caso de uso. Además el analista creará uno o más diagramas de secuencia parawww.xlibros.com
18 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASModificar diagramasy completarespecificacionesDesarrollar ydocumentarel sistemaDibujar diagramasde caso de usoEscribir escenariosde casos de usoDerivar diagramasde actividad de loscasos de usoDesarrollar diagramasde secuenciaDibujar diagramasde estadoCrear diagramasde clasesFase de análisisde sistemasFase de diseñode sistemasFase de identificaciónde los problemasEmpezar el análisis ydiseño orientado a objetosFIGURA 1.8Los pasos en el proceso dedesarrollo de UML.cada caso de uso, los cuales muestran la secuencia de actividades y su sincronización. Ésta es unaoportunidad para regresar y revisar los casos de uso, replantearlos y modificarlos si es necesario.3. Continuar en la fase de análisis, desarrollar diagramas de clases.Los sustantivos en los casos de uso son objetos que se pueden agrupar potencialmente en clases. Porejemplo, todo automóvil es un objeto que comparte características con otros automóviles. En conjuntoconforman una clase.4. Aún en la fase de análisis, dibujar diagramas de estado.Los diagramas de clases se utilizan para dibujar diagramas de estado, los cuales ayudan a comprenderprocesos complejos que no se pueden derivar completamente mediante los diagramas de secuencia. Losdiagramas de estado son en extremo útiles para modificar los diagramas de clases, por lo que continúa elproceso iterativo de modelado de UML.5. Empezar el diseño de sistemas mediante la modificación de los diagramas de UML; después, completar lasespecificaciones.El diseño de sistemas significa modificar el sistema existente, para lo cual hay que modificar losdiagramas que se dibujaron en la fase anterior. Es posible usar estos diagramas para derivar clases, susatributos y métodos (éstos son simplemente operaciones). El analista tendrá que escribir especificaciones declase para cada una de las clases e incluir los atributos, métodos y sus descripciones. También desarrollaráespecificaciones de los métodos en las que se detallen los requerimientos de entrada y salida para cadamétodo, junto con una descripción detallada del procesamiento interno del método.6. Desarrollar y documentar el sistema.UML es, obviamente, un lenguaje de modelado. Un analista podrá crear modelos maravillosos, perosi el sistema no se desarrolla no tiene mucho sentido crearlos. La documentación es imprescindible. Entremás completa sea la información que usted proporcione al equipo de desarrollo por medio de ladocumentación y los diagramas de UML, más rápido será el desarrollo y más sólido será el sistema deproducción final.A menudo las metodologías orientadas a objetos se enfocan en iteraciones pequeñas y rápidas de desarro-llo, a lo que algunas veces se le conoce como el modelo de espiral. El análisis se lleva a cabo en una parte pe-queña del sistema, en donde por lo general se empieza con un elemento de alta prioridad o tal vez con uno quewww.xlibros.com
CAPÍTULO 1 • SISTEMAS, ROLES Y METODOLOGÍAS DE DESARROLLO 19represente el mayor riesgo. A esto le sigue el diseño y la implementación. El ciclo se repite con el análisis de lasiguiente parte, el diseño y algo de implementación, y esto se repite hasta completar el proyecto. Es normal re-diseñar los diagramas y los componentes mismos. El UML es una potente herramienta de modelado que puedemejorar en forma considerable la calidad del análisis y diseño de sistemas, así como del producto final.CÓMO ELEGIR QUÉ MÉTODO DE DESARROLLO DE SISTEMAS USARLas diferencias entre las tres metodologías antes descritas no son tan grandes como parecen en un principio. Enlas tres metodologías, el analista necesita comprender primero a la organización (capítulo 2). Después el analistao el equipo del proyecto necesitan elaborar un presupuesto del tiempo y los recursos necesarios para desarrollarla propuesta del proyecto (capítulo 3). A continuación deben entrevistar a los miembros de la organización y re-copilar información detallada mediante el uso de cuestionarios (capítulo 4), obtener muestras de los datos de losinformes existentes y observar cómo se lleva a cabo la actividad empresarial actual (capítulo 5). Las tres metodo-logías tienen todas estas actividades en común.Incluso los mismos métodos tienen similitudes. La metodología SDLC y la metodología orientada a objetos requie-ren de un proceso exhaustivo de planeación y elaboración de diagramas. La metodología ágil y la metodología orien-tada a objetos permiten crear subsistemas uno a la vez hasta que se complete todo el sistema. La metodología ágil yla metodología SDLC se interesan por la forma lógica en que los datos se desplazan a través del sistema.Entonces, dada la opción de desarrollar un sistema mediante el uso de una metodología SDLC, una meto-dología ágil o una metodología orientada a objetos, ¿cuál escogería usted? La figura 1.9 muestra un conjunto delineamientos para ayudarlo a elegir qué método utilizar para desarrollar su siguiente sistema.Seleccione CuandoMetodologías ágilesLa metodologíadel ciclo de vida deldesarrollo desistemas (SDLC)Metodologíasorientadasa objetos el cliente está satisfecho con las mejoras incrementales haya que desarrollar aplicaciones rápidamente en respuesta a un entornodinámico haya un defensor de proyectos de métodos ágiles en la organización haya que realizar un rescate (el sistema falló y no hay tiempo de averiguarqué salió mal) los ejecutivos y analistas están de acuerdo con los principios de lasmetodologías ágiles los problemas modelados se prestan a sí mismos para convertirlos en clases una organización ofrece apoyo para aprender UML es posible agregar sistemas en forma gradual, un subsistema a la vez la reutilización de software escrito con anterioridad es una posibilidad es aceptable hacer frente a los problemas difíciles primero los sistemas se hayan desarrollado y documentado mediante el uso de SDLC sea importante documentar cada paso del proceso sea importante la comunicación en relación con la forma en que funcionanlos nuevos sistemas la administración de nivel superior se sienta más cómoda o segurasi utiliza SDLC haya los recursos y el tiempo adecuados para completar el SDLCcompletoFIGURA 1.9Cómo decidir qué método dedesarrollo utilizar.Podemos considerar a la información como un recurso organi-zado, de igual forma que consideramos a los humanos. Como tal,se debe administrar con cuidado, al igual que los demás recursos.La disponibilidad de poder de cómputo asequible para las orga-nizaciones ha provocado una explosión de información y, enconsecuencia, hay que poner más atención para lidiar con la in-formación que se genera.Los analistas de sistemas recomiendan, diseñan y mantienenmuchos tipos de sistemas para los usuarios, incluyendo los de pro-cesamiento de transacciones (TPS), los de automatización de ofi-RESUMENwww.xlibros.com
20 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASE X P E R I E N C I A D E H Y P E R C A S E ® 1“Bienvenido a Maple Ridge Engineering, mejor conocidacomo MRE. Esperamos que disfrute trabajar para nosotros comoconsultor de sistemas. Aunque he laborado aquí durante cinco añosen distintos puestos, me acaban de reasignar para trabajar comoayudante administrativo de Snowden Evans, el jefe del nuevo de-partamento de Capacitación y sistemas administrativos. Sin dudasomos un grupo diverso. Durante el recorrido de la empresa utilicetodas sus habilidades, tanto técnicas como orientadas a las perso-nas, para intentar comprender quiénes somos e identificar los pro-blemas y conflictos que, desde su punto de vista, debamos resolveren relación con nuestros sistemas de información”.“Para ponerlo al corriente, permítame decirle que Maple RidgeEngineering es una empresa mediana de ingeniería médica. El añopasado nuestros ingresos superaron los $287 millones. Empleamosa cerca de 335 personas. Hay aproximadamente 150 empleadosadministrativos, así como personal administrativo y de oficina comoyo; aproximadamente 75 empleados profesionales, incluyendo in-genieros, médicos y analistas de sistemas; y cerca de 110 emplea-dos industriales, como proyectistas y técnicos”,“Hay cuatro oficinas. Usted nos visitará a través de HyperCaseen nuestras oficinas generales en Maple Ridge, Tennessee. Tenemosotras tres sucursales en el sur de los Estados Unidos también:Atlanta, Georgia; Charlotte, Carolina del Norte, y Nueva Orleans,Louisiana. Nos gustaría tenerlo de visita cuando se encuentre cercadel área”.“Por ahora, debe explorar HyperCase mediante el uso de Fire-fox, Safari o Microsoft Internet Explorer”.“Para aprender más acerca de Maple Ridge Engineering comoempresa o averiguar cómo entrevistar a nuestros empleados, quie-nes utilizarán los sistemas que usted diseñe, y cómo observar susoficinas en nuestra empresa, tal vez quiera empezar por visitar elsitio Web en www.pearsonhighered.com/kendall. Después hagaclic en el vínculo etiquetado como HyperCase. En la pantalla deHyperCase, haga clic en Start y estará en la recepción de MapleRidge Engineering. De aquí en adelante puede empezar a consultarde inmediato”.Este sitio Web contiene información útil sobre el proyecto, asícomo archivos que puede descargar en su computadora. Hay unconjunto de archivos de datos de Visible Analyst y otro conjunto dearchivos de datos de Visio que corresponden a HyperCase. Estos ar-chivos contienen una serie parcialmente construida de diagramas deflujo de datos, diagramas entidad-relación, diagramas de UML einformación del repositorio. El sitio Web de HyperCase tambiéncontiene ejercicios adicionales. HyperCase está diseñado para serexplorado, por lo que no debe dejar pasar ningún objeto o pista enuna página Web.cinas (OAS), los de trabajo de conocimiento (KWS) y los deinformación administrativa (MIS). También crean sistemas orien-tados a decisiones para usuarios específicos. Entre estos sistemasestán los de soporte de decisiones (DSS), los sistemas expertos(ES), los de soporte de decisiones en grupo (GDSS), los de trabajocolaborativo asistido por computadora (CSCWS) y los de soportepara ejecutivos (ESS). Muchas aplicaciones están migrando o seestán originando en la Web para ofrecer soporte para el comercioelectrónico y muchas otras funciones empresariales.El análisis y diseño de sistemas es una metodología sistemáticapara identificar problemas, oportunidades y objetivos; para analizarlos flujos de información humana y generada por computadora enlas organizaciones, y para diseñar sistemas de información compu-tarizados para resolver un problema. Los analistas de sistemasdeben desempeñar muchos roles durante el curso de su trabajo.Algunos de estos roles son: 1) como consultor externo para la em-presa, 2) como experto de soporte dentro de una empresa y 3) comoagente de cambio en situaciones tanto internas como externas.Los analistas poseen un amplio rango de habilidades. Antesque nada el analista es un solucionador de problemas, alguien quedisfruta el reto de analizar un problema e idear una soluciónfuncional. Los analistas de sistemas requieren habilidades decomunicación, que les permitan relacionarse de manera signifi-cativa con muchos tipos de personas a diario, así como habilida-des computacionales. Comprender a los usuarios y relacionarsebien con ellos es imprescindible para su éxito.Los analistas proceden de manera sistemática. El marco detrabajo para su metodología sistemática se proporciona en lo quese conoce como ciclo de vida del desarrollo de sistemas (SDLC).Este ciclo de vida se puede dividir en siete fases secuenciales,aunque en realidad las fases están interrelacionadas y a menudose llevan a cabo en forma simultánea. Las siete fases son: iden-tificación de los problemas, oportunidades y objetivos; deter-minación de los requerimientos de información del factorhumano; análisis de las necesidades del sistema; diseño del sis-tema recomendado; desarrollo y documentación del software;prueba y mantenimiento del sistema; e implementación y evalua-ción del sistema.La metodología ágil es una metodología de desarrollo desoftware basada en valores, principios y prácticas básicas. Lossistemas que se diseñan mediante métodos ágiles se puedendesarrollar con rapidez. Las etapas en el proceso de desarrolloágil son exploración, planeación, iteraciones para la liberaciónde la primera versión, puesta en producción y mantenimiento.Hay una tercera metodología para el desarrollo de sistemas,conocida como análisis y diseño orientado a objetos. Estas téc-nicas se basan en conceptos de programación orientada a objetosque se han codificado en el UML, un lenguaje de modelado es-tandarizado en el que los objetos que se crean no sólo incluyencódigo sobre los datos, sino también instrucciones sobre lasoperaciones que se van a realizar en los datos. Los diagramasclave ayudan a analizar, diseñar y comunicar los sistemas desa-rrollados mediante UML. Por lo general, estos sistemas se de-sarrollan como componentes y el proceso de replantear estoscomponentes muchas veces es una actividad normal en el análi-sis y diseño orientado a objetos.www.xlibros.com
CAPÍTULO 1 • SISTEMAS, ROLES Y METODOLOGÍAS DE DESARROLLO 21PALABRAS CLAVE Y FRASESagente de cambioAjaxanálisis y diseño de sistemasanálisis y diseño de sistemas orientado a objetos (O-O)analista de sistemasaplicaciones de comercio electrónicoarquitectura orientada a servicios (SOA)ciclo de vida del desarrollo de sistemas (SDLC)consultor de sistemasdiseño rápido de aplicaciones (RAD)fase de exploraciónfase de mantenimientofase de planeaciónfase de puesta en producciónherramientas CASEIngeniería de Software Asistida por Computadora (CASE)inteligencia artificial (AI)interacción humano-computadora (HCI)iteraciones para la liberación de la primera versiónjuego de planeaciónlenguaje de modelado unificado (UML)m-Commerce, mComeerce (comercio móvil)metodología ágilmétodos ágilesmigrar sistemasprototipossistemas de automatización de oficinas (OAS)sistemas de información administrativa (MIS)sistemas de planificación de recursos empresariales (ERP)sistemas de procesamiento de transacciones (TPS)sistemas de soporte de decisiones (DSS)sistemas de soporte de decisiones en grupo (GDSS)sistemas de soporte para ejecutivos (ESS)sistemas de trabajo colaborativo asistido por computadora(CSCWS)sistemas de trabajo de conocimiento (KWS)sistemas expertossoftware de código fuente abierto (OSS)software hecho a la medidaPREGUNTAS DE REPASO1. Compare los procesos de tratar la información como un recurso y tratar a los humanos como un recurso2. Liste las diferencias entre OAS y KWS.3. Defina el significado de MIS.4. ¿Cuál es la diferencia entre MIS y DSS?5. Defina el término sistemas expertos. ¿Cuál es la diferencia entre los sistemas expertos y los sistemas de soporte dedecisiones?6. Enliste los problemas de interacción grupal para los cuales se diseñaron los sistemas de soporte de decisiones en grupo(GDSS) y los sistemas de trabajo colaborativo asistido por computadora (CSCWS).7. ¿Cuál es el término más general, CSCWS o GDSS? Explique.8. Defina el término comercio-m.9. Liste las ventajas de montar aplicaciones en la Web.10. ¿Cuál es la razón dominante para diseñar sistemas empresariales (o ERP)?11. Proporcione un ejemplo de un proyecto de software de código fuente abierto.12. Liste las ventajas de utilizar las técnicas de análisis y diseño de sistemas para trabajar con los sistemas de informacióncomputarizados para empresas.13. Liste tres roles que el analista de sistemas debe desempeñar. Proporcione una definición para cada uno de ellos.14. ¿Qué cualidades personales son útiles para el analista de sistemas? Haga una lista.15. Liste y defina brevemente las siete fases del ciclo de vida del desarrollo de sistemas (SDLC).16. ¿Para qué se utilizan las herramientas CASE?17. ¿Cuál es la diferencia entre las herramientas CASE superiores e inferiores?18. Defina qué significa la metodología ágil.19. ¿Cuál es el significado de la frase “el juego de planeación”?20. ¿Cuáles son las etapas en el desarrollo ágil?21. Defina el término análisis y diseño orientado a objetos.22. ¿Qué es UML?BIBLIOGRAFÍA SELECCIONADACoad, P. y E. Yourdon. Object-Oriented Analysis, 2da. ed. Englewood Cliffs, NJ: Prentice Hall, 1991.Davis, G.B. y M. H. Olson. Management Information Systems: Conceptual Foundation, Structure, and Development, 2da. ed.Nueva York: McGraw-Hill, 1985.Feller, J., P. Finnegan, D. Kelly y M. MacNamara. “Developing Open Source Software: A Community-Based Analysis of Re-search”: En IFIP International Federation for Information Processing, Vol. 208, Social Inclusion: Societal and Organiza-tional Implications for Information Systems. Editado por E. Trauth, D. Howcroft, T. Butler, B. Fitzgerald y J. DeGross, pp.261-278. Boston: Springer, 2006.www.xlibros.com
22 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASKendall, J.E. y K. E. Kendall. “Information Delivery Systems: An Explanation of Web Push and Pull Technologies”, Commu-nications of AIS, Vol. 1, artículo 14, abril 23, 1999.Kendall, J.E., K.E. Kendall y S. Kong. “Improving Quality Through the Use of Agile Methods in Systems Development: Peopleand Values in the Quest for Quality”. En Measuring Information Systems Delivery Quality. Editado por E.W. Duggan y H.Reichgelt, pp. 201-222. Hershey, PA: Idea Group Publishing, 2006.Laudon, K.C. y J.P. Laudon. Management Information Systems, 11va. ed. Upper Saddle River, NJ: Pearson Prentice Hall,2010.Verma, S. “Software Quality and the Open Source Process”. En Measuring Information Systems Delivery Quality. Editado porE.W. Duggan y H. Reichgelt, pp. 284-303. Hershey, PA: Idea Group Publishing, 2006.www.visible.com/Products/index.htm. Último acceso: marzo 23, 2009.Yourdon, E. Modern Structured Analysis Englewood Cliffs, NJ: Prentice Hall, 1989.Zhang, P., J. Carey, D. Te’eni y M. Tremaine. “Integrating Human-Computer Interaction Development into the Systems Deve-lopment Life Cycle: A Methodology”. Communications of the Association for Information Systems, Vol. 15, 2005, pp.512-543.www.xlibros.com
CAPÍTULO 1 • SISTEMAS, ROLES Y METODOLOGÍAS DE DESARROLLO 23E P I S O D I O 1CASO DE LA CPUALLEN SCHMIDT, JULIE E. KENDALL Y KENNETH E. KENDALLSe abre el casoEn un día cálido y soleado de finales de octubre, Chip Puller estaciona su automóvil y camina hacia su oficina en la CentralPacific University. Se sentía bien empezar como analista de sistemas y estaba esperando conocer al resto del personal.En la oficina, Anna Liszt se presenta a sí misma. “Nos han asignado para trabajar como equipo en un nuevo proyecto. ¿Porqué no te pongo al corriente con los detalles y después damos un paseo por las instalaciones?”“Me parece bien”, responde Chip. “¿Cuánto tiempo llevas trabajando aquí?”“Aproximadamente cinco años”, le responde Anna. “Empecé como analista programador pero durante los últimos años mehe dedicado al análisis y diseño. Espero que encontremos formas de aumentar nuestra productividad”, continúa Anna.“Cuéntame sobre el nuevo proyecto”, dice Chip.“Bien”, le responde Anna, “al igual que muchas organizaciones, tenemos una gran cantidad de microcomputadoras condistintos paquetes de software instalados en ellas. Hasta donde sé, en la década de 1980 había pocas computadoras personalesy una colección dispersa de software. Esto se expandió con rapidez en la década de 1990 y ahora todos usan computadoras.Algunos miembros del cuerpo docente utilizan más de una. El sistema actual que utilizamos para dar mantenimiento al softwarey hardware, que en un principio era bastante útil, ahora es obsoleto y está bastante abrumado”.“¿Qué hay sobre los usuarios? ¿A quién debo conocer? ¿Quién crees que será importante para ayudarnos con el nuevosistema?”, pregunta Chip.“Vas a conocer a todos, pero hay personas clave que acabo de conocer y te diré lo que he aprendido para que las recuerdescuando las conozcas”.“Dot Matricks es gerente de todos los sistemas de microcomputadoras en Central Pacific. Al parecer nos llevamos bien enel trabajo. Es muy competente. Realmente le gustaría poder mejorar la comunicación entre los usuarios y los analistas”.“Será un placer conocerla”, especula Chip.“Y también está Mike Crowe, experto en mantenimiento de computadoras. Realmente parece el tipo más amable, pero estádemasiado ocupado. Necesitamos ayudar a aligerar su carga. La contraparte de Mike encargada del software es Cher Ware. Esun espíritu libre, pero no me malentiendas: conoce su trabajo”, dice Anna.“Tal vez sea divertido trabajar con ella”, reflexiona Chip.“Podría ser”, asiente Anna. “También conocerás al analista financiero, Paige Prynter. Todavía no puedo entenderla bien”.“Tal vez yo te pueda ayudar”, dice Chip.“Por último, deberías —más bien dicho, tienes que— conocer a Hy Perteks, quien hace un excelente trabajo como encar-gado del Centro de información. A él le gustaría que pudiéramos integrar nuestras actividades del ciclo de vida”.“Suena prometedor”, dice Chip. “Creo que me va a gustar trabajar aquí”.EJERCICIOE-1. De la conversación de presentación que compartieron Chip y Anna, ¿cuáles de los elementos mencionados podrían su-gerir el uso de herramientas CASE?www.xlibros.com
24 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMAS24C A P Í T U L O 2Comprensión y modelado delos sistemas organizacionalesOBJETIVOS DE APRENDIZAJEAl completar este capítulo usted podrá:1. Comprender que las organizaciones y sus miembros son sistemas, y que como analistadebe asumir una perspectiva de sistemas.2. Describir los sistemas en forma gráfica mediante el uso de diagramas de flujo de datos anivel de contexto, modelos entidad-relación, casos de uso y escenarios de casos de uso.3. Reconocer que los distintos niveles de la administración requieren distintos sistemas.4. Comprender que la cultura organizacional afecta al diseño de los sistemas de información.Para analizar y diseñar sistemas de información apropiados, los analistasde sistemas deben concebir a las organizaciones en que trabajan comosistemas configurados por la interacción de tres fuerzas principales: losniveles de administración, el diseño de las organizaciones y las culturasorganizacionales.Las organizaciones son sistemas extensos compuestos por subsiste-mas interrelacionados. Los subsistemas se ven influenciados por tres amplios niveles de perso-nas que toman decisiones administrativas (operaciones, administración a nivel medio yadministración estratégica) y atraviesan horizontalmente todo el sistema organizacional. Lasculturas y subculturas organizacionales influyen en la forma en que las personas se interrela-cionan en los subsistemas. Este capítulo aborda estos temas y sus implicaciones para el desa-rrollo de sistemas de información.LAS ORGANIZACIONES COMO SISTEMASPodemos conceptualizar operativamente a las organizaciones y sus miembros como sistemasdiseñados para cumplir con ciertas metas y objetivos predeterminados a través de las personasy los recursos que emplean. Las organizaciones están compuestas por sistemas más pequeños einterrelacionados (departamentos, unidades, divisiones, etc.) que brindan funciones especializa-das. Algunas de las funciones comunes son contabilidad, marketing, producción, procesamientode datos y administración. Las funciones especializadas (sistemas más pequeños) se reintegranen un momento dado a través de diversos medios para formar un todo organizacional efectivo.Conceptualizar a las organizaciones como sistemas complejos permite entender la forma enque funcionan a través de los principios de sistemas. Para establecer en forma adecuada los re-querimientos de información y diseñar sistemas de información apropiados, es primordial com-prender a la organización como un todo. Todos los sistemas están compuestos de subsistemas(incluyendo los sistemas de información); por lo tanto, al estudiar una organización también de-bemos examinar cómo se involucran los sistemas más pequeños y la manera en que funcionan.www.xlibros.com
CAPÍTULO 2 • COMPRENSIÓN Y MODELADO DE LOS SISTEMAS ORGANIZACIONALES 25Capacidad de interrelación e interdependencia de los sistemasTodos los sistemas y subsistemas están interrelacionados y son interdependientes. Este hecho tiene implicacionesimportantes, tanto para las organizaciones como para los analistas de sistemas que buscan ayudar a estas organi-zaciones a cumplir mejor sus objetivos. Cuando se modifica o elimina algún elemento de un sistema, también seafecta considerablemente al resto de los elementos y subsistemas de ese sistema.Por ejemplo, suponga que los gerentes de una organización deciden no contratar más asistentes adminis-trativos y desean reemplazar sus funciones mediante PC en red. Esta decisión tiene el potencial de afectar enforma considerable no sólo a los asistentes administrativos y a los gerentes, sino también a todos los miem-bros de la organización que construyeron redes de comunicación con los asistentes que antes trabajaban ahí.Todos los sistemas procesan entradas provenientes de sus entornos. Por definición, los procesos cambian otransforman las entradas en salidas. Cada vez que examine un sistema, identifique qué se está cambiando o pro-cesando. Si no hay cambios, tal vez no esté identificando un proceso. Algunos procesos comunes en los sistemasson verificar, actualizar e imprimir.Otro aspecto de las organizaciones como sistemas es que todos los sistemas están contenidos por límitesque los separan de sus entornos. Los límites organizacionales existen en un rango continuo, desde los extre-madamente permeables hasta los que son casi impermeables. Para poder adaptarse y sobrevivir, las organiza-ciones primero deben ser capaces de importar personas, materia prima e información a través de sus límites(entradas) y después intercambiar sus productos terminados, servicios o información con el mundo exterior(salidas).La retroalimentación es una forma de control de un sistema. Como sistemas, todas las organizaciones usanla planeación y el control para administrar sus recursos con efectividad. La figura 2.1 muestra la forma en que seutilizan las salidas del sistema como retroalimentación para comparar el rendimiento con los objetivos. A su de-bido tiempo, esta comparación ayuda a los gerentes a formular objetivos más específicos como entradas. Veamosel ejemplo de una empresa estadounidense de manufactura que produce conjuntos de entrenamiento con pesasrojo, blanco y azul, y gris metálico. La empresa descubre que un año después de las olimpiadas se vendieronmuy pocos conjuntos con la combinación rojo, blanco y azul. Los gerentes de producción utilizan esa informa-ción para tomar decisiones con respecto a los colores a producir subsecuentemente. En este caso, la retroalimen-tación es útil para la planeación y el control.El sistema ideal, en todo caso, es uno que se corrija o regule automáticamente de tal forma que no se requie-ran decisiones basadas en acontecimientos comunes. Un ejemplo de ello es el sistema de cadena de suministropara planificar la producción, el cual toma en cuenta las demandas actual y pronosticada, y formula una soluciónpropuesta como salida. Un fabricante italiano de ropa tejida que comercializa sus prendas en Estados Unidostiene un sistema así. Esta empresa produce la mayor parte de sus suéteres en color blanco, utiliza su sistema deinformación de inventario computarizado para averiguar qué colores se venden más y entonces tiñe los suéteresen esos colores justo antes de enviarlos.La retroalimentación se recibe desde el interior de la organización y de los entornos exteriores. Cualquiercosa externa a los límites de una organización se considera un entorno. Numerosos entornos con diversos gradosde estabilidad constituyen el medio en el que existen las organizaciones.Algunos de éstos son: 1) el entorno de la comunidad en la que se encuentra físicamente la organización,y se determina considerando el tamaño de su población y su perfil demográfico (nivel de educación, ingresospromedio y otros indicadores); 2) el entorno económico, que se ve influenciado por los factores del mercado,incluyendo la competencia; 3) el entorno político, que se controla mediante gobiernos estatales y locales,y 4) el entorno legal, que establece leyes y lineamientos federales, estatales, regionales y locales. Aunque esposible planear respuestas a los cambios del entorno, por lo general una organización no puede controlarlos demanera directa.ObjetivosSistemaSalidasEntradasFIGURA 2.1Las salidas del sistema sirvencomo retroalimentación paracomparar el rendimiento con losobjetivos.www.xlibros.com
26 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASEl concepto de apertura o cerrazón interna de las organizaciones está relacionado y es similar al concepto depermeabilidad de los límites externos. La apertura y cerrazón también existen en un continuo, ya que no hay talcosa como una organización completamente abierta o una totalmente cerrada.La apertura se refiere al flujo libre de información dentro de la organización. Los subsistemas como los de-partamentos creativos o artísticos a menudo se caracterizan como abiertos, con un flujo libre de ideas entre losparticipantes y muy pocas restricciones en cuanto a quién recibe la información y en qué momento, cuando unproyecto creativo está en su infancia.En el extremo opuesto del continuo podría haber una unidad del departamento de defensa que trabaje enun proyecto ultrasecreto de planeación que afecte la seguridad nacional. Cada persona debería entonces tenerautorización de acceso, la información oportuna sería indispensable y el acceso a la información se otorgaríasólo a quien fuera estrictamente necesario incluir. Una unidad tal deberá funcionar bajo muchas restricciones.Si utilizamos la superposición de sistemas para comprender a las organizaciones, podremos reconocer laidea de que los sistemas están compuestos por subsistemas, su capacidad de interrelación e interdependen-cia, la existencia de límites que permiten o evitan la interacción entre varios departamentos y elementos deotros subsistemas y entornos, y la existencia de entornos internos que se caracterizan con base en un gradode apertura y cerrazón que podría diferir entre los departamentos, las unidades o, incluso, los proyectos desistemas.Organizaciones y equipos virtualesNo todas las organizaciones o partes de éstas son visibles en una ubicación física. En la actualidad, toda unaorganización o varias unidades de ésta pueden poseer componentes virtuales que les permitan modificar susconfiguraciones para adaptarse a las demandas cambiantes del proyecto o del mercado. Las empresas virtualesutilizan redes de computadoras y tecnología de comunicaciones para unir personas con habilidades específicas,de manera que trabajen en proyectos físicamente dispersos. La tecnología de la información permite coordinarestos equipos de miembros remotos. A menudo surgen equipos virtuales en organizaciones ya establecidas; sinembargo, en ciertos casos las organizaciones de trabajadores remotos han podido lograr sus metas sin necesidadde la tradicional inversión requerida para las instalaciones físicas.O P O R T U N I D A D D E C O N S U L T O R Í A 2 . 1La E de la vitamina E significa E-commerce (comercio electrónico)“Nuestras tiendas de venta al público y la división de pedidos porcorreo están de maravilla”, dice Bill Berry, uno de los propietarios deMarathon Vitamin Shops, “pero para ser más competitivos debemosestablecer un sitio Web de comercio electrónico”. Su padre, copropie-tario, responde: “Estoy de acuerdo, pero ¿dónde empezamos?” Barrypadre sabía, desde luego, que no era sólo cuestión de establecer unsitio Web y pedir a sus clientes que enviaran por correo electrónico suspedidos a la tienda de ventas al público; ya había identificado ochoelementos constitutivos del comercio electrónico y sabía que todas laspartes tenían que trabajar en conjunto dado que formaban un sistemamayor. Para que el comercio electrónico se realizara era necesario:1. Atraer clientes a un sitio Web de comercio electrónico.2. Informar a los clientes sobre los productos y servicios ofrecidos.3. Permitir a los clientes personalizar sus productos en línea.4. Completar las transacciones con los clientes.5. Aceptar varias formas de pago.6. Brindar soporte a los clientes después de la venta a través delsitio Web.7. Hacer los arreglos correspondientes para entregar losproductos y servicios.8. Personalizar la apariencia del sitio Web para distintosclientes.Bill Berry leyó la lista y la contempló por unos instantes. “Esobvio que el comercio electrónico es más complejo de lo que pen-saba”, dijo. Usted puede ayudar a los propietarios de MarathonVitamin Shops en varias formas:1. Elabore una lista de los elementos interrelacionados ointerdependientes. Después escriba un párrafo para indicarpor qué es imprescindible supervisar estos elementos condetenimiento.2. Decida cuáles serán los límites y el alcance máximo delsistema. Es decir, escriba un párrafo en el que exprese suopinión sobre qué elementos son imprescindibles paraMarathon Vitamin Shop y cuáles se pueden explorar después.3. Sugiera los elementos que es necesario manejar dentro de laempresa y los que se puedan asignar a otra compañía capazde hacerse cargo del trabajo de una manera más eficiente.Justifique sus sugerencias en dos párrafos, uno para las tareasinternas a la empresa y otras para las tareas que se debenasignar a otras empresas (outsourcing).www.xlibros.com
CAPÍTULO 2 • COMPRENSIÓN Y MODELADO DE LOS SISTEMAS ORGANIZACIONALES 27Hay varios beneficios potenciales para las organizaciones virtuales, como la posibilidad de reducir los cos-tos derivados de instalaciones físicas, una respuesta más rápida a las necesidades de los clientes y la capacidadde ayudar a los empleados virtuales a cumplir con sus obligaciones familiares de criar a sus hijos o a sus padresque están envejeciendo. Lo que aún sigue abierto a investigación y debate es qué tan importante será cumplircon las necesidades sociales de los trabajadores virtuales. Un ejemplo de necesidad de identificación tangible conuna cultura surgió cuando ciertos estudiantes inscritos en una universidad en línea sin campus físico (ni equiposdeportivos), pedían continuamente artículos como sudaderas, tazas de café y banderines que tuvieran impresoel logotipo de la universidad virtual. Estos artículos son artefactos culturales significativos que las escuelas con-vencionales siempre han proporcionado a sus alumnos.Muchos analistas de sistemas y equipos de diseño ahora pueden trabajar en forma virtual y, de hecho, mu-chos de ellos marcaron el camino que otros tipos de empleados empezaron a seguir para realizar su trabajo enforma virtual. Algunas aplicaciones permiten que los analistas que ofrecen asistencia técnica a través de la Webpuedan “ver” la configuración de software y hardware del usuario que solicita ayuda, con lo cual se crea unequipo virtual ad hoc compuesto por el analista y el usuario.Una perspectiva de sistemasAl tomar una perspectiva de sistemas, los analistas pueden empezar a descifrar y comprender en términos gene-rales las diversas empresas con las que entrarán en contacto. Es importante que los miembros de los subsistemasestén conscientes de que su trabajo está interrelacionado. En la figura 2.2 podemos observar que las salidas delos subsistemas de producción sirven como entradas para el departamento de marketing y que las salidas de éstesirven como nuevas entradas para el de producción. Ningún subsistema puede lograr sus metas cabalmente sinel otro.Los problemas surgen cuando cada gerente sostiene una visión distinta de la importancia de su propio sub-sistema funcional. En la figura 2.3 podemos ver que, de acuerdo con la perspectiva personal del gerente de mar-keting, la empresa está controlada por el marketing y las demás áreas funcionales están interrelacionadas pero notienen la misma importancia. De igual forma, la perspectiva de un gerente de producción considera a su departa-mento como el centro de la empresa que controla a todas las demás áreas funcionales.La importancia relativa de las áreas funcionales, según lo que revelan las perspectivas personales de los ge-rentes, adquiere un significado adicional cuando los gerentes van subiendo por los rangos hasta convertirse engerentes estratégicos. Pueden provocar problemas si sobreenfatizan sus requerimientos previos de informaciónfuncional en relación con las necesidades más amplias de la organización.Por ejemplo, si un gerente de producción sube de puesto pero sigue enfocado en los itinerarios de produc-ción y el rendimiento de los trabajadores de la línea de producción, tal vez se vean afectados los aspectos másamplios relacionados con los pronósticos y las políticas, por ejemplo. Esta tendencia es peligrosa en cualquiertipo de empresa: los ingenieros que se esfuerzan por subir de puesto y se convierten en administradores de em-presas aeroespaciales, los profesores universitarios que dejan sus departamentos para convertirse en decanos olos programadores que avanzan y se convierten en ejecutivos de empresas de software. Con frecuencia, su res-tringida visión periférica crea problemas para los analistas de sistemas que tratan de separar los requerimientosreales de información de los deseos de obtener cierto tipo específico de información.Las salidas del departamentode marketing se conviertenen las entradas para eldepartamento de producción.Las salidas del departamentode producción se conviertenen las entradas para eldepartamento de marketing.MarketingProducciónFIGURA 2.2Las salidas de un departamentosirven como entradas para otro,de tal forma que los subsistemasestán interrelacionados.www.xlibros.com
28 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASSistemas empresariales: considerar a la organización como un sistemaLos sistemas empresariales, que con frecuencia se denominan sistemas de planificación de recursos empresaria-les (ERP), constituyen un término empleado para describir un sistema de información organizacional (empresa-rial) integrado. En esencia, ERP es software que ayuda al flujo de información entre las áreas funcionales de laorganización. Es un sistema personalizado que, en vez de desarrollarlo dentro de la empresa, por lo general secompra a una de las empresas de desarrollo de software reconocidas por sus paquetes ERP, como SAP u Oracle.Después, el producto se personaliza para adaptarse a los requerimientos de una empresa en particular. Por lo ge-neral, el distribuidor requiere de un compromiso con la organización en términos de capacitación especializadapara los usuarios o analistas. Muchos paquetes ERP están diseñados para operar en la Web. Aunque su populari-dad está en aumento, hay algunos que ven a los sistemas ERP con algo de escepticismo.El sistema ERP evolucionó a partir de la planificación de requerimientos de materiales (MRP), sistemas deinformación diseñados para mejorar el proceso de manufactura en general y el proceso de ensamblaje en particu-lar. Ahora los sistemas ERP incluyen componentes de manufactura y, por ende, ayudan con la planificación dela capacidad, los programas de producción de materiales y los pronósticos. Además de los procesos de manu-factura (y su contraparte representada por los servicios), los sistemas ERP incluyen la planificación de ventas yoperaciones, y la distribución, la obtención y la administración de la cadena de suministro. Por lo tanto, afecta enforma considerable a todas las áreas de la organización, incluyendo contabilidad, finanzas, administración, mar-keting y los sistemas de información.Puede ser frustrante implementar una solución ERP, ya que es difícil analizar un sistema en uso y despuésadaptar el modelo ERP a ese sistema. Además, las empresas tienden a diseñar sus procesos de sistemas antesde implementar el sistema ERP. Por desgracia, es común que este proceso se realice de manera apresurada y elmodelo de negocios propuesto no siempre coincide con la funcionalidad del sistema ERP. El resultado es que serequiere más personalización, periodos de tiempo de implementación extendidos, costos más altos y a menudoLa forma en que el gerente de marketing puede ver a la organizaciónLa forma en que el gerente de producción puede ver a la organización ComprasComprasFinanzasProducciónProducciónMarketingMarketingFinanzasDistribuciónDistribuciónFIGURA 2.3Una descripción de la perspectivapersonal de los gerentesfuncionales muestra queconsideran que su propia áreafuncional es la que controla a laorganización.www.xlibros.com
CAPÍTULO 2 • COMPRENSIÓN Y MODELADO DE LOS SISTEMAS ORGANIZACIONALES 29se pierde la confianza del usuario. Los analistas necesitan estar conscientes de la magnitud del problema al que seenfrentan al tratar de implementar paquetes de ERP.DESCRIPCIÓN GRÁFICA DE LOS SISTEMASPodemos realizar la descripción gráfica de un sistema o subsistema, según la forma en que existe dentro de laorganización corporativa de varias formas. Los diversos modelos gráficos muestran los límites del sistema y la in-formación que utiliza.Los sistemas y el diagrama de flujo de datos a nivel de contextoEl primer modelo es el diagrama de flujo de datos a nivel de contexto (también conocido como modelo ambien-tal). Los diagramas de flujo de datos se enfocan en los datos que fluyen hacia el sistema y salen de él, ademásdel procesamiento de estos datos. Podemos describir con detalle estos componentes básicos de todo programacomputacional y utilizarlos para analizar la precisión e integridad del sistema.En la figura 2.4 podemos ver que el diagrama de flujo de datos a nivel de contexto emplea sólo tres sím-bolos: 1) un rectángulo con esquinas redondas, 2) un cuadrado con dos bordes sombreados y 3) una flecha. Losprocesos transforman los datos entrantes en información de salida y el nivel de contenido tiene sólo un proceso,que representa a todo el sistema completo. La entidad externa representa a cualquier entidad que suministra o re-cibe información del sistema, pero que no forma parte del mismo. Esta entidad puede ser una persona, un grupode personas, un puesto o departamento corporativo o, inclusive, otros sistemas. Las líneas que conectan a las en-tidades externas con el proceso se llaman flujos de datos y representan los datos.En la figura 2.5 podemos ver un ejemplo de diagrama de flujo de datos a nivel de contexto. En este ejemplose representan los elementos más básicos del sistema de reservación de una aerolínea. El pasajero (una entidad)inicia una solicitud de viaje (flujo de datos). El diagrama a nivel de contexto no muestra el suficiente detallecomo para indicar con exactitud lo que ocurre (no se supone que deba hacerlo), pero podemos ver que las pre-ferencias del pasajero y los vuelos disponibles se envían al agente de viajes, quien a su vez envía la informa-ción sobre los boletos de vuelta al proceso. También podemos ver que la reservación del pasajero se envía a laaerolínea. El diagrama de flujo de datos a nivel de contexto sirve como un buen punto de inicio para dibujar eldiagrama de casos de uso (que veremos más adelante en este capítulo).En el capítulo 7 aprenderemos que un flujo de datos contiene mucha información. Por ejemplo, la reserva-ción del pasajero contiene su nombre, la aerolínea, el (los) número(s) de vuelo, la(s) fecha(s) del viaje, el precio,la preferencia de asiento, etcétera. Sin embargo, por ahora debemos preocuparnos principalmente por la formaen que un nivel de contexto define los límites del sistema. En el ejemplo anterior, sólo las reservaciones formanparte del proceso. Otras decisiones que debe tomar la aerolínea (por ejemplo, comprar aviones, cambiar itinera-rios, ajustar los precios) no forman parte de este sistema.El diagrama de flujo de datos a nivel de contexto es una manera de mostrar el alcance del sistema o lo quese va a incluir en él. Las entidades externas están fuera del alcance y esto es algo sobre lo que el sistema no tienecontrol.Un proceso significa que se llevana cabo una o varias acciones.Una entidad es una persona,grupo, departamento o cualquiersistema que recibe o generainformación o datos.Un flujo de datos muestra queun proceso va a pasar o recibirinformación.FIGURA 2.4Los símbolos básicos de undiagrama de flujo de datos.www.xlibros.com
30 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASLos sistemas y el modelo de entidad-relaciónOtra forma en que un analista de sistemas puede mostrar el alcance del sistema y definir límites apropiadospara el mismo es mediante el uso de un modelo entidad-relación. Los elementos que conforman un sistema or-ganizacional se pueden denominar entidades. Una entidad puede ser una persona, un lugar o una cosa, como unpasajero en una aerolínea, un destino o un avión. O bien, una entidad puede ser un evento, como el fin de mes,un periodo de ventas o el tiempo de inactividad de una máquina. Una relación es la asociación que describe a lainteracción entre las entidades.Hay muchas convenciones para dibujar diagramas de entidad-relación (E-R) (con nombres como las nota-ciones tipo pata de cuervo [crow’s foot], Arrow o Bachman). En este libro utilizaremos la notación tipo pata decuervo. Por ahora vamos a suponer que una entidad es un cuadro rectangular simple.En la figura 2.6 aparece un diagrama de entidad-relación simple. Dos entidades se enlazan entre sí medianteuna línea. En este ejemplo, el final de la línea se marca mediante dos marcas paralelas cortas (I I) para indicarque esta relación es de uno a uno. Por lo tanto, se asigna exactamente un empleado a una extensión telefónica.Nadie comparte la misma extensión telefónica en esta oficina.0AerolíneaSolicitud de viajeInformaciónsobre los boletosAgentede viajesPreferenciasy vuelos disponiblesSistema dereservaciónde la aerolíneaReservacióndel pasajeroPasajeroFIGURA 2.5Un diagrama de flujo a nivelde contexto para el sistema dereservación de una aerolínea.EmpleadoExtensióntelefónicaUnEMPLEADOse asignaa unaEXTENSIÓNTELEFÓNICA.UnaEXTENSIÓNTELEFÓNICAse enlistapara unEMPLEADO.seenlistaparaseasignaaFIGURA 2.6Diagrama Entidad-Relación quemuestra una relación uno-a-uno.www.xlibros.com
CAPÍTULO 2 • COMPRENSIÓN Y MODELADO DE LOS SISTEMAS ORGANIZACIONALES 31Las flechas rojas no forman parte del diagrama de entidad-relación; aparecen sólo para indicar cómo leerlo.La frase del lado derecho de la línea se lee de arriba hacia abajo de la siguiente manera: “Un EMPLEADO seasigna a una EXTENSIÓN TELEFÓNICA”. Del lado izquierdo, leyendo de abajo hacia arriba, la flecha dice:“Una EXTENSIÓN TELEFÓNICA se enlista para un EMPLEADO”.De manera similar, en la figura 2.7 se muestra otra relación. Es obvio que en este diagrama se utiliza la no-tación tipo pata de cuervo (>+), y este ejemplo específico contiene una relación de varios a uno. Si leemos de iz-quierda a derecha, la flecha indica: “Varios EMPLEADOS son miembros de un DEPARTAMENTO”. Si leemosde derecha a izquierda, implica: “Un DEPARTAMENTO contiene varios EMPLEADOS”.Observe que cuando hay una relación de varios a uno, la gramática cambia de “es” a “son” aún y cuandose escribe el “es” en singular en la línea. La notación tipo pata de cuervo y la marca individual no indican lite-ralmente que este extremo de la relación tenga que ser de “varios” en forma obligatoria. Lo que implican es queeste extremo puede ser cualquier cosa: uno o varios.La figura 2.8 muestra más detalles sobre este esquema. Aquí enlistamos varias relaciones de entidades comunes.La primera, “Un EMPLEADO se asigna a una OFICINA” es una relación de uno a uno. La segunda es una relaciónde uno a varios: “Una AERONAVE DE CARGA servirá a uno o más CENTROs DE DISTRIBUCIÓN”. La terceraes ligeramente distinta, ya que tiene un círculo en un extremo. Se puede leer así: “Un ANALISTA DE SISTEMASse puede asignar a VARIOS PROYECTOS”, lo cual significa que el analista se puede asignar a ningún proyecto [elcírculo (O) indica cero], a uno o a varios proyectos. De igual forma, el círculo (O) indica que es posible no tenerningún mantenimiento programado en la siguiente relación. Recuerde que la marca corta significa uno. Por lo tanto,podemos leerlo de la siguiente forma: “Una MÁQUINA puede o no tener asignado un MANTENIMIENTO PRO-GRAMADO”. Observe que la línea se escribe como “tiene asignado”, pero las marcas de los extremos de la líneaindican que no se va a realizar ningún mantenimiento (O) o que se va a realizar un mantenimiento (I).La siguiente relación establece que: “Uno o más VENDEDORES (plural de VENDEDOR) se asignan a unoo más CLIENTEs”. Ésta es la clásica relación de varios a varios. La siguiente relación se puede leer así: “LaOFICINA PRINCIPAL puede tener uno o varios EMPLEADOs”, o “Uno o más EMPLEADOs pueden asignarseo no a la OFICINA PRINCIPAL”. Una vez más, los símbolos I y O juntos implican una situación booleana; enotras palabras, uno o cero.La relación final que se muestra en esta figura se puede leer así: “Varios PASAJEROs van a volar a variosDESTINOs”. Algunas personas prefieren usar este símbolo [>+] para indicar una condición de “varios” obliga-toria (¿sería posible tener sólo un pasajero o sólo un destino?). Aún así, algunas herramientas CASE como Vi-sible Analyst no ofrecen esta posibilidad, ya que es suficiente con la condición opcional de uno o varios que semuestra en la relación VENDEDOR-CLIENTE.Hasta ahora hemos modelado todas nuestras relaciones mediante un solo rectángulo simple y una línea. Estemétodo funciona bien cuando examinamos las relaciones de cosas reales, como personas, lugares y cosas. PeroDepartamentoes miembro decontieneEmpleadoVarios EMPLEADOSson miembros de unDEPARTAMENTO.Un DEPARTAMENTOcontiene variosEMPLEADOS.FIGURA 2.7Un diagrama de entidad-relaciónque muestra una relación de variosa uno.www.xlibros.com
32 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASalgunas veces creamos elementos en el proceso de desarrollo de un sistema de información. Algunos ejemplosson facturas, recibos, archivos y bases de datos. Por ejemplo, cuando queremos describir la forma en que se rela-ciona una persona con un recibo, es conveniente indicar el recibo de una manera distinta, como se muestra en lafigura 2.9, en forma de entidad asociativa.Una entidad asociativa puede existir sólo si está conectada con por lo menos otras dos entidades. Por estarazón algunos la llaman gerundio, cruce, intersección o entidad concatenada. Esta formulación tiene sentido, yaque un recibo no sería necesario a menos que hubiera un cliente y un vendedor para realizar la transacción.La entidad atributiva es otro tipo de entidad. Cuando un analista quiere mostrar datos que dependen por com-pleto de la existencia de una entidad fundamental, hay que utilizar una entidad atributiva. Por ejemplo, si una bi-craftPasajero Destinose asigna aes ocupada pores asignado aserá desarrollado porestá bajose está realizando ense asigna aes llamado portienese asigna ava a volar aserá visitado porservirá aes servido porEmpleado OficinaAnalista desistemasCentro dedistribuciónVendedor ClienteOficina principal EmpleadoMáquinaProyectoAeronavede cargaMantenimientoprogramadoFIGURA 2.8En los diagramas E-R se utilizantres tipos distintos de entidades.EntidadfundamentalEntidadasociativaPor lo general una entidad real:una persona, lugar o cosaAlgo creado que unea dos entidadesAlgo útil para describir atributos,en especial los grupos repetitivosEntidadatributivaFIGURA 2.9Tres tipos diferentes de entidadesutilizadas en diagramas E-Rwww.xlibros.com
CAPÍTULO 2 • COMPRENSIÓN Y MODELADO DE LOS SISTEMAS ORGANIZACIONALES 33blioteca tiene varias copias del mismo libro, se puede utilizar una entidad atributiva para designar qué copia dellibro se va a sacar. La entidad atributiva es útil para mostrar grupos de datos repetitivos. Por ejemplo, suponga quevamos a modelar las relaciones que existen cuando un patrocinador obtiene boletos para un concierto o show. Alprincipio las entidades parecen obvias: “Un CLIENTE y un CONCIERTO/SHOW”, como se muestra en la figura2.10. ¿Qué tipo de relación existe? A primera instancia, el CLIENTE obtiene una reservación para un CON-CIERTO/SHOW y se puede decir que el CONCIERTO/SHOW hizo una reservación para un CLIENTE .Desde luego que el proceso no es tan simple, por lo que el diagrama E-R tampoco necesita ser así de simple.En realidad el CLIENTE hace una RESERVACIÓN, como se muestra en la figura 2.11. La RESERVACIÓN espara un CONCIERTO/SHOW. El CONCIERTO/SHOW contiene la RESERVACIÓN y la RESERVACIÓN estáa nombre del CLIENTE. Agregamos una entidad asociativa en este caso ya que se creó una RESERVACIÓN de-bido a que el sistema de información requiere que se relacionen el CLIENTE y el CONCIERTO/SHOW.ClienteConcierto/Showhace unareservaciónparaobtieneunareservaciónparaAquí vami primerintento.KenFIGURA 2.10El primer intento para dibujar undiagrama E-R.Concierto/ShowhaceClienteestá anombredeespara unAgreguéuna entidadasociativa.JulietieneReservaciónFIGURA 2.11Cómo mejorar el diagrama E-R alagregar una entidad asociativallamada RESERVACIÓN.www.xlibros.com
34 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASPodemos ver de nuevo que este proceso es bastante simple, pero como los conciertos y shows tienen variaspresentaciones, en la figura 2.12 dibujamos una vez más el diagrama E-R. Ahora agregamos una entidad atribu-tiva para manejar las diversas presentaciones del CONCIERTO/SHOW. En este caso se hace la RESERVACIÓNpara una PRESENTACIÓN específica y la PRESENTACIÓN es una de varias que pertenecen a un CONCIERTO/SHOW específico. A su vez, el CONCIERTO/SHOW tiene varias presentaciones y una PRESENTACIÓN tieneuna RESERVACIÓN que está a nombre de un CLIENTE específico.A la derecha de este diagrama E-R hay un conjunto de atributos de datos que conforman cada una de las en-tidades. Algunas entidades pueden tener atributos en común. Es posible realizar búsquedas con los atributos queestán subrayados. Los atributos se denominan claves y los describiremos en el capítulo 13.A menudo los diseñadores de sistemas utilizan diagramas E-R para ayudar a modelar el archivo o la base dedatos. Sin embargo, es aun más importante que el analista de sistemas comprenda lo más pronto posible tantolas entidades como las relaciones en el sistema organizacional. Al realizar bosquejos de algunos diagramas E-Rbásicos, el analista necesita:1. Enlistar las entidades en la organización para obtener una mejor comprensión de la misma.2. Elegir las entidades clave para reducir el alcance del problema a una dimensión manejable y significativa.Concierto/Showtienetiene pertenece aPresentaciónhaceClienteReservaciónestáa nombredesehaceparaCliente-nombreCliente-direcciónCliente-teléfonoCliente-tarjeta-de-créditoReservación-númeroCliente-nombrePresentación-númeroConcierto/ShowFechaHoraUbicaciónPrecioPresentación-númeroConcierto/ShowFechaHoraUbicaciónPrecio-opcionesConcierto/ShowConcierto-detallesFechas-del-eventoUbicaciónFIGURA 2.12Un diagrama E-R más completoque muestra los atributos de datosde las entidades.www.xlibros.com
CAPÍTULO 2 • COMPRENSIÓN Y MODELADO DE LOS SISTEMAS ORGANIZACIONALES 353. Identificar cuál debe ser la entidad principal.4. Confirmar los resultados de los pasos 1 al 3 por medio de otros métodos de recopilación de datos(investigación, entrevistas, administración de cuestionarios, observación y prototipos), según lo descrito enlos capítulos 4 al 6.Es imprescindible que el analista de sistemas empiece a dibujar diagramas E-R al entrar a la organización envez de esperar a que sea necesario diseñar la base de datos, ya que los diagramas E-R ayudan al analista a com-prender cuál es la verdadera actividad de la organización, a determinar el tamaño y alcance del problema, y a discernirsi está tratando o no con el problema correcto. Hay que confirmar o revisar los diagramas E-R a medida que selleve a cabo el proceso de recopilación de datos.MODELADO DE CASOS DE USOAunque en un principio se presentaron como un diagrama para usarlo en el UML orientado a objetos, ahora loscasos de uso se utilizan sin importar la metodología para el desarrollo de sistemas. Se pueden utilizar como partedel SDLC o en el modelado ágil. Un modelo de caso de uso describe qué hace un sistema sin describir cómo loA T R A C T I V O D E L A M A CMicrosoft Visio facilita al analista de sistemas la tarea de dibujar diagramas E-R, así como la mayoría de los diagramasque se encuentran en este libro, pero está disponible sólo para PC. Los usuarios de equipos Mac tienen una alternativa:OmniGraffle Professional. Este paquete de software es más fácil de usar que Microsoft Visio, ya que su interfaz esmás uniforme e intuitiva, y se opera arrastrando y colocando.También incluye una “guía inteligente” que utiliza marcadores de distancia desplegables para ayudar a colocarlos símbolos en los lugares correctos. OmniGraffle tiene integrados muchos símbolos como los que se utilizan en losdiagramas E-R, pero también permite al usuario acceder a una biblioteca de terceros conocida como Graffletopiapara buscar símbolos de UML y otros especializados.FIGURA 2.MACOmniGraffle de Omni Group es un paquete de dibujo poderoso y fácil de usar.www.xlibros.com
36 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMAShace; es decir, es un modelo lógico del sistema (en el capítulo 7 veremos más detalles sobre los modelos lógi-cos o conceptuales). El modelo de caso de uso presenta al sistema desde la perspectiva de un usuario fuera delmismo (por ejemplo, los requerimientos del sistema).Un analista desarrolla casos de uso en un esfuerzo de cooperación con los expertos de negocios que ayudana definir los requerimientos del sistema. El modelo de caso de uso provee un medio efectivo de comunicaciónentre el equipo de negocios y el equipo de desarrollo. Un modelo de caso de uso particiona la forma en que tra-baja el sistema en comportamientos, servicios y respuestas (los casos de uso) que sean importantes para los usua-rios del sistema.Desde la perspectiva de un actor (o usuario), un caso de uso debe producir algo de valor. Por lo tanto, el ana-lista debe determinar qué es importante para el usuario y debe recordar incluirlo en el diagrama del caso de uso.Por ejemplo, ¿introducir una contraseña es algo de valor para el usuario? Tal vez se deba incluir si al usuario lepreocupa la seguridad o si es algo imprescindible para el éxito del proyecto.Símbolos de los casos de usoUn diagrama de caso de uso contiene los símbolos del actor y del caso de uso, junto con líneas conectoras. Losactores son similares a las entidades externas; existen fuera del sistema. El término actor se refiere a un rolespecífico de un usuario del sistema. Por ejemplo, un actor puede ser un empleado, pero también puede ser uncliente en la tienda de la empresa. Incluso cuando es la misma persona en el mundo real, se representa como dossímbolos distintos en un diagrama de caso de uso, ya que la persona interactúa con el sistema en distintos roles.El actor existe fuera del sistema e interactúa con éste de una manera específica. Un actor puede ser un humano,otro sistema o un dispositivo como un teclado o una conexión Web. Los actores pueden iniciar una instancia deun caso de uso. Un actor puede interactuar con uno o más casos de uso; un caso de uso puede involucrar a unoo más actores.Los actores se pueden dividir en grupos. Los actores principales suministran datos o reciben informacióndel sistema. Algunos usuarios interactúan en forma directa con el sistema (actores del sistema), pero los actoresprincipales también pueden ser personas de negocios que no interactúen directamente con el sistema sino queparticipen en cierta forma. Los actores principales son importantes ya que son las personas que usan el sistemay pueden proveer los detalles acerca de lo que debería hacer el caso de uso. También pueden proveer una listade objetivos y prioridades. Los actores de soporte (también conocidos como actores secundarios) ayudan a man-tener el sistema en funcionamiento o a proveer otros servicios; son las personas que operan el departamento desoporte técnico, los analistas, los programadores, etcétera.Algunas veces es conveniente crear un perfil de actor que enliste a los actores, su historial y sus habilidadesen un formato de tabla. Esto puede ser útil para entender cómo interactúa el actor con el sistema. Por ejemplo, elperfil del Especialista de procesamiento de pedidos sería: “Un usuario rutinario del software, familiarizado conlas características menores, las excepciones de los pedidos y la personalización de pedidos”. También es conve-niente hacer una lista de los actores junto con sus objetivos y prioridades. Cada objetivo se puede convertir enun caso de uso.Un caso de uso provee a los desarrolladores una perspectiva de lo que quieren los usuarios, sin detalles téc-nicos o implementación. Podemos considerar un caso de uso como una secuencia de transacciones en un sistema.El modelo de casos de uso se basa en las interacciones y relaciones de casos de uso individuales.Un caso de uso siempre describe tres cosas: un actor que inicia un evento, el evento que desencadena uncaso de uso y el caso de uso que realiza las acciones desencadenado por el evento. En un caso de uso, un actorque utiliza el sistema inicia un evento que comienza una serie relacionada de interacciones en el sistema. Los ca-sos de uso se utilizan para documentar una transacción o evento únicos. Un evento es una entrada para el sistemaque ocurre a una hora y lugar específicos, y provoca que el sistema haga algo.Es mejor crear menos casos de uso que un exceso de ellos. A menudo no se incluyen las consultas y los in-formes; 20 casos de uso (y no más de 40 o 50) son suficientes para un sistema grande. Los casos de uso tambiénse pueden anidar, si es necesario. Algunos casos de uso utilizan el verbo administrar para agrupar casos de usode manera que se puedan agregar, eliminar y cambiar a otro diagrama de casos de uso de menor nivel. Ustedpuede incluir un caso de uso en varios diagramas, pero el verdadero caso de uso está definido sólo una vez en elrepositorio. El nombre de un caso de uso consta de un verbo y un sustantivo.Relaciones de los casos de usoLas relaciones activas se conocen como relaciones de comportamiento y se utilizan principalmente en los diagra-mas de casos de uso. Hay cuatro tipos básicos de relaciones de comportamiento: comunica, incluye, extiende ygeneraliza. Observe que todos estos términos son verbos. En la figura 2.13 se muestran las flechas y líneas quewww.xlibros.com
CAPÍTULO 2 • COMPRENSIÓN Y MODELADO DE LOS SISTEMAS ORGANIZACIONALES 37se utilizan para dibujar diagramas de cada uno de los cuatro tipos de relaciones de comportamiento. A continua-ción describiremos estas cuatro relaciones.COMUNICACIÓN Esta relación de comportamiento se utiliza para conectar un actor con un caso de uso. Recuerdeque la tarea del caso de uso es proporcionar cierto tipo de resultado que sea benéfico para el actor en el sistema.Por lo tanto, es importante documentar estas relaciones entre los actores y los casos de uso. En nuestro primerejemplo, un Estudiante se comunica con Inscribir en el curso. En los diagramas de casos de uso de la figura2.14 se muestran ejemplos de algunos componentes de un ejemplo de inscripción de estudiantes.INCLUSIÓN Esta relación (también conocida como relación de usos) describe la situación en la que un caso deuso contiene comportamiento común para más de un caso de uso. En otras palabras, el caso de uso comúnse incluye en los otros casos de uso. Una flecha punteada que apunta al caso de uso común indica la relación deinclusión. Un ejemplo sería un caso de uso Pagar cuotas de estudiantes que se incluye en Inscribir en el cursoy Hacer arreglos de hospedaje, ya que en ambos casos los estudiantes deben pagar sus cuotas. Varios casos deuso pueden usar esto. La flecha apunta hacia el caso de uso común.RelaciónComunicaIncluyeSímboloPara conectar un actor con un caso de uso se utiliza una líneasin puntas de flecha.Un caso de uso contiene un comportamiento común paramás de un caso de uso. La flecha apunta al caso de usocomún.Generaliza Una “cosa” de UML es más general que otra “cosa”.La flecha apunta a la “cosa” general.Extiende Un caso de uso distinto maneja las excepciones del casode uso básico. La flecha apunta del caso de uso extendidoal básico.Significado<< Incluye >><< Extiende >>FIGURA 2.13Algunos componentesde los diagramas decaso de uso quemuestran a los actores,los casos de uso y lasrelaciones para unejemplo de inscripciónde estudiantes.<< incluye >><< incluye >>Inscribiren el cursoRelaciónde inclusiónHacer arreglosde hospedajePagar cuotasde estudiantes<< extiende >> Pagar cuotasde estudiantesRelaciónde extensiónel estudiante indica eltipo de coberturaSeguro médicode estudiantesRelación decomunicaciónInscribiren elcursoEstudianteEstudiante demedio tiempoEstudianteRelación degeneralizaciónFIGURA 2.14Ejemplos de casos de uso yrelaciones de comportamientopara la inscripción de estudiantes.www.xlibros.com
38 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASEXTENSIÓN Esta relación describe la situación en la que un caso de uso posee el comportamiento que permite alnuevo caso de uso manejar una variación o excepción a partir del caso de uso básico. Por ejemplo, el caso de usoextendido Seguro médico de estudiantes extiende el caso de uso básico Pagar cuotas de estudiantes. La flechava del caso de uso extendido al caso de uso básico.GENERALIZACIÓN Esta relación implica que una cosa es más común que otra. Esta relación puede existir entredos actores o dos casos de uso. Por ejemplo, un Estudiante de medio tiempo generaliza a un Estudiante.De manera similar, algunos de los empleados de la universidad son profesores. La flecha apunta a la cosageneral.Desarrollo del alcance del sistemaEl alcance de un sistema define sus límites, lo que está al alcance (dentro del sistema) y lo que está fuera de él.Por lo general el proyecto cuenta con un presupuesto que ayuda a definir el alcance, además del tiempo inicialy final. Los actores siempre están fuera del alcance del sistema. Las líneas de comunicación que conectan a losactores con los casos de uso son los límites y definen el alcance. Como un diagrama de caso de uso se crea du-rante las primeras etapas del ciclo de vida de los sistemas, el presupuesto, tiempo inicial y final pueden cambiara medida que avanza el proyecto; a medida que el analista aprende más sobre el sistema, tal vez cambien losdiagramas del caso de uso, el caso de uso y el alcance.Desarrollo de diagramas de casos de usoEl caso de uso principal consiste en un flujo estándar de eventos que describe un comportamiento estándar delsistema. El caso de uso principal representa la terminación normal, esperada y exitosa del caso de uso.Para crear un diagrama de un caso de uso, empiece por pedir a los usuarios una lista de todo lo que el sis-tema deba hacer por ellos. Esto se puede realizar mediante entrevistas, en una sesión de diseño de aplicaciónconjunta (como se describe en el capítulo 4) o a través de otras sesiones guiadas en equipo. El analista tambiénpuede utilizar sesiones de historias ágiles (que describiremos en el capítulo 6) para desarrollar casos de uso.Anote quién está involucrado con cada caso de uso y las responsabilidades o servicios que el caso de uso debeproveer a los actores o a los otros sistemas. En las fases iniciales, ésta puede ser una lista parcial que se expandaen las fases de análisis posteriores. Use los siguientes lineamientos:1. Revise las especificaciones de negocios e identifique a los actores involucrados.2. Identifique los eventos de alto nivel y desarrolle los casos de uso principales que describen a esos eventosjunto con la forma en que los actores los inician. Examine con cuidado los roles que desempeñan los actorespara identificar todos los posibles casos de uso principales iniciados por cada actor. No necesita mostrar loscasos de uso que tengan poca o nula interacción del usuario.3. Revise cada caso de uso principal para determinar las posibles variaciones del flujo a través del caso de uso.Con base en este análisis establezca las rutas alternativas. Debido a que generalmente el flujo de eventos esdistinto en cada caso, busque actividades que podrían tener éxito o fracasar. Busque además lasramificaciones en la lógica del caso de uso en donde sea posible obtener distintos resultados.Un diagrama de flujo de datos a nivel de contexto puede ser un punto de partida para un caso de uso. Las en-tidades externas son los actores potenciales. Después examine el flujo de datos para determinar si podría iniciarun caso de uso o si podría ser producido por uno.En la figura 2.15 se muestra un ejemplo de un diagrama de caso de uso que representa a un sistema utilizadopara planear una conferencia. Los actores son el Presidente de la conferencia, responsable de planearla y admi-nistrarla, el Participante de la conferencia, los Oradores, un Orador principal, Reservaciones de hotel y unProveedor de alimentos. Los actores representan el rol que desempeña el usuario y el Proveedor de alimentospuede ser un empleado del hotel o un servicio de banquetes externo.Tanto el Presidente de la conferencia como el Proveedor de alimentos están involucrados en la planea-ción de las comidas y los banquetes. El Presidente de la conferencia también es responsable de organizara los oradores. El Participante se registra para la conferencia. Observe que el caso de uso Reservar cuartoestá involucrado en una relación de inclusión con los casos de uso Organizar orador y Registrarse para laconferencia, ya que tanto los oradores como los participantes necesitarán alojamiento. El caso de uso Orga-nizar la traducción de idiomas extiende al caso de uso Registrarse para la conferencia ya que no todos losparticipantes requerirán servicios de traducción de idiomas. El actor Orador es una generalización de Oradorprincipal.Desarrollo de escenarios de casos de usoCada caso de uso tiene una descripción. Designaremos a la descripción como un escenario de caso de uso. Comodijimos antes, el caso de uso principal representa el flujo estándar de eventos en el sistema y las rutas alternativaswww.xlibros.com
CAPÍTULO 2 • COMPRENSIÓN Y MODELADO DE LOS SISTEMAS ORGANIZACIONALES 39describen variaciones sobre el comportamiento. Los escenarios de casos de uso pueden describir lo que ocurre alcomprar un artículo agotado, o si una empresa de tarjetas de crédito rechaza la compra solicitada por un cliente.No hay un formato estandarizado para los casos de uso, por lo que cada organización tiene que especificarlos estándares a incluir. A menudo, los casos de uso se documentan mediante una plantilla de documento de casode uso predeterminada por la organización, que facilita la lectura de los casos de uso y provee información estan-darizada para cada caso de uso en el modelo.Niveles de los casos de usoTal vez quiera crear casos de uso para distintos niveles. Hay un método (definido por Alistair Cockburn) queutiliza las siguientes metáforas de altitud:1. Blanco es el nivel más alto, al igual que las nubes. Éste es el nivel empresarial y puede haber sólo cuatro ocinco para toda la organización. Algunos ejemplos podrían ser anunciar los productos, vender los productosa los clientes, administrar el inventario, administrar la cadena de suministro y optimizar los embarques.2. El cometa es inferior al blanco, pero sigue siendo un nivel alto que ofrece una visión general. El caso de usodel cometa puede estar en el nivel de unidad de negocio o de departamento, y es un resumen de losobjetivos. Algunos ejemplos serían registrar estudiantes o, si se trabaja con una agencia de viajes, hacer lareservación de aerolínea, hotel, automóvil o crucero.3. Azul está a nivel del mar, y por lo general se crea para los objetivos de los usuarios. A menudo ofrece elmayor interés para los usuarios y es más fácil de comprender para los negocios. Por lo general se escribepara una actividad de negocios y cada persona debe ser capaz de realizar una actividad de nivel azul en unProveedorde alimentosPresidentede laconferenciaReservacionesde hotelOrganizaroradorPlanearla provisiónde alimentos<< incluye >>Reservarcuarto<< incluye >><< extiende>>ParticipanteRegistrarsepara la conferenciaOradorprincipalOradorOrganizar latraducciónde idiomasFIGURA 2.15Un diagrama de caso de uso querepresenta al sistema utilizadopara planear una conferencia.www.xlibros.com
40 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASlapso de 2 a 20 minutos. Algunos ejemplos son registrar un estudiante que desea continuar, agregar un nuevocliente, colocar un artículo en un carrito de compras y pasar a pagar.4. Índigo o pez es un caso de uso que muestra muchos detalles, a menudo a un nivel funcional o subfuncional.Algunos ejemplos son elegir una clase, pagar las cuotas académicas, buscar el código de aeropuerto para unaciudad y producir una lista de clientes después de introducir un nombre.5. Negro o almeja, como en el fondo del océano. Éstos son los casos de uso más detallados, a un nivel de sub-función. Algunos ejemplos podrían ser validar un inicio de sesión seguro, agregar un nuevo campo medianteHTML dinámico o usar Ajax para realizar una pequeña parte de una página Web.En la figura 2.16 se muestra un ejemplo de escenario de caso de uso. Algunas de las áreas que se incluyenson opcionales y tal vez no todas las organizaciones las utilicen. Las tres áreas principales son:1. Un encabezado de área que contiene los identificadores e iniciadores del caso.2. Los pasos realizados.3. Un área de pie de página que contiene precondiciones, suposiciones, preguntas y demás información relacionada.Nombre del caso de uso: Registrarse para la conferencia ID Único: Conf RG 003Área:Actor(es):Descripción:Evento desencadenador:Precondiciones:Postcondiciones:Suposiciones:Pasos realizados (ruta principal)Planeación de la conferenciaEl participante ya se registró y creó una cuenta de usuario.El participante tiene un navegador Web, además de un ID de usuario y contraseña válidos.El participante se registró con éxito para la conferencia.Garantía de éxito: El participante se registró para la conferencia y está inscrito en todas las sesiones seleccionadas.Garantía mínima: El participante pudo iniciar sesión.Requerimientos cumplidos: Permitir que los participantes de la conferencia se registren mediante un sitio Web seguro.Cuestiones pendientes: ¿Cómo se debe manejar una tarjeta de crédito rechazada?Prioridad: AltaRiesgo: MedioEl participante utiliza el sitio Web de registro para la conferencia, introduce su ID de usuario y su contraseña,y hace clic en el botón de inicio de sesión.1. El participante inicia sesión mediante el servidor Web seguro.2. Se lee el registro del participante y se verifica su contraseña.3. Se muestra la información del participante y la sesiónen la página Web de registro.4. El participante introduce su información en el formularioWeb de registro y hace clic en el botón Enviar.5. Se valida la información de registro en el servidor Web.6. Se muestra la página Confirmación de registro para confirmarla información de registro.7. Se hace un cargo a la tarjeta de crédito equivalentea las cuotas de registro.8. Se escribe el registro en el Diario de agregar registros.ID de usuario, contraseñaRegistro del participante, ID de usuario, contraseñaRegistro del participante, registro de la sesiónFormulario Web de registroFormulario Web de registroPágina Web de confirmaciónPágina Web segura para tarjeta de créditoPágina Web de confirmación9. Se actualiza el registro en el Archivo maestro de registros. Página Web de confirmación, registro del proceso de registro10. Se actualiza el registro de la sesión para cada sesiónseleccionada en el Archivo maestro de sesiones.Página Web de confirmación, registro de la sesión11. Se actualiza el registro para el participante en el Archivomaestro de participantes.Página Web de confirmación, registro de participantes12. Se envía la página Web de Confirmación de registro exitosoal participante.Número de confirmación del registro en el proceso de registroTipo de desencadenador:ParticipanteInteresados: Patrocinador de la conferencia, oradores de la conferenciaNivel: AzulPermitir que el participante de la conferencia se registre en línea mediante un sitio Web seguro.Información para los pasosExterno TemporalFIGURA 2.16Un escenario de caso de uso sedivide en tres secciones:identificación e iniciación; pasosrealizados; y condiciones,suposiciones y preguntas.www.xlibros.com
CAPÍTULO 2 • COMPRENSIÓN Y MODELADO DE LOS SISTEMAS ORGANIZACIONALES 41La primer área (identificadores e iniciadores del caso de uso) orienta al lector y contiene el nombre delcaso de uso junto con un ID único: el área de aplicación o sistema al que pertenece este caso de uso; los actoresinvolucrados en el caso de uso; y los interesados que tienen un alto nivel de interés en el caso de uso. Algunosinteresados nunca interactúan en forma directa con el sistema, como los accionistas, el consejo de directores o elgerente de ventas. Cada actor principal es un interesado, pero no se enlista en el área de interesados. Se incluyeel nivel (azul, cometa, etc.) y una breve descripción de lo que logra el caso de uso.El encabezado concluye con el evento iniciador (desencadenador); es decir, lo que ocasionó que empezarael caso de uso, junto con el tipo de desencadenador, ya sea externo o temporal. Los eventos externos son losque inicia un actor, ya sea una persona u otro sistema que solicita información, como el sistema de reserva-ciones de una aerolínea que solicita información sobre los vuelos de un sistema de aerolíneas. Los eventostemporales son aquellos que se desencadenan o empiezan debido al tiempo. Hay eventos que ocurren a unahora específica, como enviar correo electrónico sobre ofertas especiales una vez a la semana los domingos enla tarde, enviar facturas en un día específico o generar estadísticas gubernamentales en una fecha especificadacada trimestre.La segunda área del caso de uso incluye los pasos realizados y la información requerida para cada uno deellos. Estos enunciados representan el flujo estándar de eventos y los pasos que se llevaron a cabo para completarcon éxito el caso de uso. Es conveniente escribir un caso de uso para la ruta principal y después escribir uno paracada una de las rutas alternativas por separado, en vez de utilizar instrucciones IF...THEN. Los pasos se enume-ran con un entero y pueden provenir de una entrevista detallada con los usuarios, o se pueden derivar de historiasde modelado ágil (como veremos en el capítulo 6). Hay que revisar estos pasos con los usuarios para aclarar todoel proceso.El analista debe examinar cada uno de los pasos y determinar la información requerida para cada uno. Sino puede determinar la información, debe programar una entrevista de seguimiento con el usuario. Algunas des-cripciones de casos de uso incluyen extensiones o escenarios alternativos, con las excepciones como seccionesadicionales que siguen el flujo estándar de eventos. Éstas se enumeran con un entero, un punto decimal y otroentero, como 3.1, 3.2, 3.3, etcétera (estos pasos pueden o no utilizarse). Los analistas y los usuarios pueden orga-nizar lluvias de ideas para ver qué puede fallar en la ruta principal y tal vez para descubrir detalles y condicionesimportantes. Es necesario trabajar con los usuarios para determinar qué hacer cuando ocurran estas condiciones.Esto ayuda a detectar errores en las primeras etapas del ciclo de vida.La figura 2.17 muestra cómo se pueden incluir escenarios lógicos y alternativos en la sección intermedia deun caso de uso. En este ejemplo de la aerolínea podemos observar que el paso 1 está compuesto de pasos más pe-queños, a muchos de los cuales se les antepone un “si”. Estos pasos siguen en la ruta principal, pero ocurren sólosi se cumple la condición. Por ejemplo, si hay muchos aeropuertos que dan servicio a una cuidad, entonces semostrarán todos los aeropuertos. Aquí también pueden aparecer las extensiones o escenarios alternos. Para estaaerolínea, otros escenarios incluyen la selección de vuelos, la selección de asientos y la selección de comidas.Los casos de uso pueden incluir también pasos iterativos o de ciclos.La tercera área del caso de uso incluye: Precondiciones, o la condición del sistema antes de que se pueda llevar a cabo el caso de uso, que puede serotro caso de uso. Un ejemplo podría ser, “El espectador inició sesión con éxito en el sistema”, o podría ser laterminación exitosa de otro caso de uso. Postcondiciones, o el estado del sistema después de que termine el caso de uso, incluyendo los resultadosque recibieron las personas, las transmisiones a otros sistemas y los datos que se hayan creado oactualizado. Las postcondiciones se relacionan con los objetivos o requerimientos de los usuarios a partirde una definición del problema (como veremos en el capítulo 3) o de historias ágiles (como veremos en elcapítulo 6). Las suposiciones que podrían afectar al método del caso de uso y que podrían estipular la tecnologíarequerida, como los requerimientos mínimos de tecnología en un navegador Web o incluso una versiónespecífica o más reciente del mismo. Una suposición podría ser que estén habilitadas las cookies o elJavaScript. El analista debe determinar qué hacer si no se cumplen las suposiciones. Al usar Google Maps,el navegador Web debe tener habilitado el JavaScript. Si no está habilitado, el mapa no se mostrará. Netflixrequiere el uso de cookies. Las buenas páginas Web detectarán que no se ha cumplido una suposición y lonotificarán al espectador mediante un mensaje, incluyendo la información sobre cómo activar las cookies oel JavaScript para los distintos navegadores Web. La garantía mínima es el mínimo que se prometió a los usuarios. Tal vez ellos no estén contentos con esteresultado y puede ser que no ocurra nada. La garantía de éxito es lo que dejaría a los usuarios satisfechos: por lo general, que se haya cumplido elobjetivo del caso de uso. Hay que atender cualquier cuestión o responder pregunta pendiente antes de implementar el caso de uso.www.xlibros.com
42 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMAS Una declaración opcional de prioridad del caso de uso, que puede provenir de una definición del problema ode los requerimientos de los usuarios. Una declaración opcional del riesgo involucrado al crear el caso de uso.El área “requerimientos cumplidos” enlaza el caso de uso con los requerimientos u objetivos del usuario apartir de una definición del problema. Una vez que desarrolle los casos de uso, asegúrese de repasar sus resulta-dos con los expertos de negocios para verificar y refinar los casos de uso si es necesario.En este escenario de caso de uso específico llamado Registrarse para la conferencia, el único actor invo-lucrado es el Participante. El área general es Planeación de la conferencia y el caso de uso se desencadenadebido al inicio de sesión del participante en la página Web de registro. El área Pasos realizados muestrauna lista de la secuencia de eventos que deben ocurrir para un registro exitoso en la conferencia. Observe que la infor-mación necesaria para realizar cada uno de los pasos se muestra del lado derecho, y puede incluir páginas Web yformularios, tablas y registros de las bases de datos.Pasos realizados (ruta principal) Información para los pasos1. Introducir aeropuertos de salida y llegada, fechas del viaje Ubicaciones de los aeropuertos1.1. Si se introduce el código de un aeropuerto, mostrar el nombre, ciudad y país que coincidan1.2. Si se introduce una ciudad, encontrar todas las ciudades que coincidan1.3. El cliente selecciona una ciudad.1.4. Si hay más de un aeropuerto para la ciudad, mostrar los aeropuertos1.5. El cliente selecciona un aeropuerto1.6. Insertar el código del aeropuerto (3 caracteres)1.7. Mostrar el país, ciudad y nombre del aeropuerto que coincida2. Buscar todos los vuelos que coincidan con asientos disponibles Información de los vuelos3. El cliente selecciona un vuelo4. El cliente inicia sesión Inicio de sesión del cliente5. El cliente selecciona los nombres de los pasajeros Registros de los pasajeros6. Se muestra el gráfico de asientos para ver todos los asientos disponibles Número de avión, gráfico de asientos,asientos disponibles7. El cliente selecciona el (los) asiento(s) para cada pasajero8. Mostrar página de confirmación y tarjeta de crédito9. Se verificó la tarjeta de crédito10. Se envió la confirmación por correo electrónico11. Se hizo la reservación de la aerolíneaExtensiones o escenarios alternativosSelección de vuelos1. Se muestra una lista de vuelos2. El cliente selecciona un vuelo3. Se envía la solicitud a la aerolínea4. El vuelo ya está llenoSelección de asientos1. Se muestra una lista de vuelos2. El cliente selecciona un vuelo3. Se envía la solicitud a la aerolínea4. Se obtienen las reservaciones de asientos5. Se muestra el gráfico de asientos6. El cliente no puede encontrar un asiento aceptableSelección de comidas para los vuelos internacionales1. El cliente selecciona la comida de la lista desplegable Lista de comidas disponibles de la aerolínea2. Se actualiza el registro con la selección de comida Registro de comida del clienteFIGURA 2.17Los casos de uso pueden incluir pasos condicionalesasí como extensiones o escenarios alternativos.www.xlibros.com
CAPÍTULO 2 • COMPRENSIÓN Y MODELADO DE LOS SISTEMAS ORGANIZACIONALES 43El área de Precondiciones, en la sección del pie de página del escenario del caso de uso, muestra una listade lo que debe ocurrir antes de que el participante pueda registrarse para una conferencia. En este ejemplo, elparticipante debe haber iniciado sesión ya como miembro de la sociedad, además de contar con un ID de usua-rio y contraseña válidos. El área Postcondiciones muestra una lista de lo que ha logrado el caso de uso. El áreaSuposiciones muestra una lista de las premisas básicas que el analista supone han sido cumplidas por el actor deantemano. El área Requerimientos cumplidos muestra por qué este caso de uso es importante y necesario paraque el área de negocios pueda tener éxito. La prioridad es una indicación de los casos de uso que se deben desa-rrollar primero y los que se pueden postergar. El riesgo es una evaluación aproximada en relación con la posibili-dad de que surjan problemas o dificultades al desarrollar el caso de uso. En este caso, el riesgo es medio debido aque el caso de uso de registro requiere un servidor seguro y acepta información de tarjetas de crédito.Creación de las descripciones de los casos de usoUse los siguientes cuatro pasos para crear descripciones de casos de uso:1. Use historias ágiles, los objetivos de la definición del problema, requerimientos de los usuarios o una lista decaracterísticas como punto de inicio.2. Pregunte sobre las tareas que hay que realizar para lograr la transacción. Pregunte si el caso de uso lee datoso actualiza alguna tabla.3. Averigüe si hay acciones iterativas o de ciclos.4. El caso de uso termina cuando se completa el objetivo del cliente.Por qué son útiles los diagramas de casos de usoSin importar el método que utilice para desarrollar su sistema (métodos SDLC tradicionales, métodos ágiles ométodos orientados a objetos), usted descubrirá que los casos de uso son muy valiosos. Los diagramas de casosde uso identifican a todos los actores en el dominio del problema, de forma que un analista de sistemas se puedeconcentrar en lo que los humanos desean y necesitan para usar el sistema, extender sus capacidades y disfrutar suinteracción con la tecnología.Las acciones a completar también se muestran con claridad en el diagrama de caso de uso. Esto no sólo fa-cilita al analista la tarea de identificar los procesos, sino que también ayuda en la comunicación con los demásanalistas en el equipo y con los ejecutivos de la empresa.El escenario del caso de uso siempre es algo que vale la pena. Como una gran parte de la información quelos usuarios confieren al analista está en forma de historias, es fácil capturar estas historias en la forma de unescenario de caso de uso. Este escenario siempre documenta el evento desencadenador para que el analista puedaen todo momento rastrear los pasos que condujeron hacia otros casos de uso. Como se anotan los pasos realiza-dos, es posible emplear escenarios de casos de uso para escribir procesos lógicos.Los diagramas de caso de uso se están haciendo populares debido a su sencillez y carencia de detalles téc-nicos. Se utilizan para mostrar el alcance de un sistema, junto con las principales características del mismo y losactores que trabajan con esas características principales. Los usuarios ven el sistema, pueden reaccionar a él yproveer retroalimentación. También pueden ayudar a determinar si se debe crear o comprar el software.En la figura 2.18 se muestran las principales razones de escribir casos de uso..NIVELES DE ADMINISTRACIÓNLa administración en las organizaciones existe en tres amplios niveles horizontales: control operacional, planea-ción y control administrativo (administración de nivel medio), y administración estratégica, como se muestra en• Los casos de uso comunican los requerimientos del sistema con efectividad, ya que losdiagramas se mantienen simples.• Los casos de uso permiten a las personas contar historias.• Las historias de los casos de uso tienen sentido para las personas sin conocimientos técnicos.• Los casos de uso no dependen de un lenguaje especial.• Los casos de uso pueden describir la mayoría de los requerimientos funcionales (como lasinteracciones entre los actores y las aplicaciones).• Los casos de uso pueden describir los requerimientos no funcionales (como el rendimientoy la capacidad de mantenimiento) a través del uso de estereotipos.• Los casos de uso ayudan a los analistas a definir los límites.• Los casos de uso se pueden rastrear para que los analistas puedan identificar los enlacesentre los casos de uso y otras herramientas de diseño y documentación.FIGURA 2.18Las principales razones de escribircasos de uso son su efectividadpara comunicarse con los usuariosy su capacidad para capturar lashistorias de los usuarios.www.xlibros.com
44 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASla figura 2.19. Cada nivel acarrea sus propias responsabilidades y todo el trabajo para lograr las metas y objetivosde la organización a su propio modo.El control operacional forma el nivel inferior de la administración de tres niveles. Los gerentes de opera-ciones toman decisiones mediante el uso de reglas predeterminadas que tienen resultados predecibles cuando seimplementan en forma correcta.Ellos toman decisiones que afectan a la implementación en los itinerarios de trabajo, el control de inventa-rios, los embarques, la recepción y el control de procesos como el de producción. Los gerentes de operacionessupervisan los detalles operativos de la organización.La administración de nivel medio forma el segundo nivel (intermedio) del sistema de administración de tresniveles. Los gerentes de este nivel toman decisiones de planeación y control de corto plazo en relación con lamejor forma de asignar los recursos para cumplir con los objetivos de la organización.Sus decisiones van desde pronosticar los requerimientos de recursos a futuro, hasta resolver los problemasde los empleados que amenazan la productividad. El dominio de la toma de decisiones de los gerentes del nivelControl operacionalPlaneación ycontrol administrativoAdministraciónestratégicaFIGURA 2.19La administración en lasorganizaciones existe en tresniveles horizontales: controloperacional, planeación y controladministrativo, y administraciónestratégica.O P O R T U N I D A D D E C O N S U L T O R Í A 2 . 2Donde hay carbón hay una copia“Todavía no sé qué haremos con las hojas rosas”, admitió Ri-chard Russel. “Son parte de un formulario cuadruplicado que sepuede separar. Todo lo que sé es que debemos conservarlas para elarchivista, para que las archive cuando tenga tiempo”.Richard es un ejecutivo de cuenta junior recién contratado paraCarbon, Carbon & Rippy, una casa de bolsa. Usted trata de recorrerlos pasos que él lleva a cabo para hacer “oficial” una compra deacciones, ya que su jefe le pidió a usted que optimizara el procesoencargado de almacenar y recuperar la información de compra deacciones en el sistema computacional.Después de que usted se va, Richard sigue pensando en losformularios de color rosa. Le dice a su empleado, Harry Schultz: “Enlos dos meses que llevo aquí, nunca he visto a alguien que utilice esashojas rosa. Me hacen perder mi tiempo y el tuyo, sin mencionar todoel espacio requerido para archivarlas. Vamos a tirarlas”.Richard y Harry se ponen a abrir todos los archivos antiguosque mantenía el predecesor de Richard y tiran todos los formulariosde color rosa archivados, junto con los que se habían acumuladopero aún no se habían archivado. Les lleva horas, pero hacen muchoespacio. “En definitiva valió la pena”, asegura Richard a Harry.Tres semanas después. Una asistente del jefe de Richard lla-mada Carol Vaness aparece. Richard está feliz de ver una cara co-nocida y la saluda: “Hola Carol, ¿qué hay de nuevo?”.“Lo mismo de siempre”, suspira Carol. “Bueno, creo que no eslo mismo para ti, ya que eres el nuevo. Pero necesito todos esosmolestos formularios de color rosa”.Casi entrando en shock, Richard intercambia miradas conHarry y después murmura: “Estás bromeando, ¿verdad?”Carol se ve más seria de lo que nunca pensó Richard que fueraposible, y contesta: “Sin bromas. Sintetizo todos los formularios decolor rosa de todos los corredores de bolsa y después comparo mistotales con la información computarizada sobre las compras deacciones. Es parte de nuestra auditoría rutinaria de tres meses paramantener la precisión de nuestras transacciones. Mi trabajo de-pende del tuyo. ¿Acaso la señorita McCue no te explicó eso cuandoempezaste?”.¿Qué concepto de sistemas ignoraron Richard y Harry cuandotiraron los formularios de color rosa? ¿Cuáles son las posibles ra-mificaciones para los analistas de sistemas si se ignoran los concep-tos generales de sistemas?www.xlibros.com
CAPÍTULO 2 • COMPRENSIÓN Y MODELADO DE LOS SISTEMAS ORGANIZACIONALES 45medio puede caracterizarse de una manera conveniente como parcialmente operacional y parcialmente estraté-gico, con fluctuaciones constantes.La administración estratégica es el tercer nivel del control administrativo de tres niveles. Los gerentes estra-tégicos ven hacia el futuro, más allá de la organización, y toman decisiones que guiarán a los gerentes del nivelmedio y de operación en los meses y años por venir.Los gerentes estratégicos trabajan en un entorno de toma de decisiones muy incierto. Mediante declaracio-nes de los objetivos y la determinación de estrategias y políticas para lograrlos, los gerentes estratégicos definenla organización como un todo. Ellos tienen la visión más amplia, ya sea que la empresa decida desarrollar nuevaslíneas de productos, deshacerse de empresas conjuntas no rentables, adquirir otras empresas compatibles o in-cluso permitir su propia adquisición o fusión.Existen marcados contrastes entre las personas que toman decisiones en varias dimensiones. Por ejemplo,los gerentes estratégicos tienen varios objetivos de decisión, mientras que los gerentes de operaciones tienen unosolo. A menudo es difícil que los gerentes de nivel superior identifiquen los problemas, pero esto es fácil para losgerentes de operación. Los gerentes estratégicos se enfrentan a problemas semiestructurados, mientras quelos gerentes de nivel inferior lidian la mayor parte del tiempo con problemas estructurados.Las soluciones alternativas para un problema al que se enfrentan los gerentes estratégicos a menudo son difí-ciles de articular, pero las alternativas con las que trabajan los gerentes de operaciones son por lo general fácilesde enumerar. La mayoría del tiempo los gerentes estratégicos toman decisiones de una sola vez, mientras que lasdecisiones que toman los gerentes de operaciones tienden a ser repetitivas.Implicaciones para el desarrollo de sistemas de informaciónCada uno de los tres niveles administrativos contiene distintas implicaciones para desarrollar sistemas de infor-mación. Algunos de los requerimientos de información para los gerentes son evidentes, mientras que otros sonconfusos y se traslapan entre sí.Los gerentes de operaciones necesitan información interna de naturaleza repetitiva y bajo nivel. Dependenmucho de la información que captura el rendimiento actual y son grandes usuarios de los recursos de informaciónen línea y en tiempo real. La necesidad que tienen los gerentes de operaciones de obtener información anteriorsobre el rendimiento e información periódica es sólo moderada. No pueden hacer mucho uso de la informaciónexterna que permite proyecciones a futuro.En el siguiente nivel administrativo, los gerentes de nivel medio necesitan información de corto y largo pla-zos. Debido a la naturaleza de sus trabajos relacionada con la localización y solución de problemas, los gerentesde este nivel experimentan necesidades extremadamente altas de información en tiempo real. Para realizar sutarea de control en forma apropiada también necesitan información actual sobre el rendimiento medido contraestándares establecidos. Los gerentes de nivel medio dependen mucho de la información interna. Al contrario delos gerentes de operaciones, tienen una gran necesidad de información histórica, así como de información que lespermita predecir los eventos futuros y simular numerosos escenarios posibles.Los gerentes estratégicos difieren un poco de los gerentes de nivel medio y de operaciones en cuanto a susrequerimientos de información. Dependen mucho de la información proveniente de fuentes externas que sumi-nistran noticias sobre las tendencias del mercado y las estrategias de las corporaciones competidoras. Debidoa que la tarea de la gerencia estratégica exige realizar pronósticos sobre el futuro incierto, los gerentes estraté-gicos tienen una gran necesidad de información de una naturaleza predictiva y de información que les permitacrear muchos escenarios distintos del tipo “que pasaría si”. Los gerentes estratégicos también tienen fuertes ne-cesidades de información basada en informes periódicos, derivadas de su esfuerzo por adaptarse a la evoluciónconstante.CULTURA ORGANIZACIONALLa cultura organizacional es un área establecida de investigación que ha crecido en forma notable en la últimageneración. Así como es apropiado pensar que las organizaciones incluyen muchas tecnologías, es igual de apro-piado verlas como anfitrionas de varias subculturas competentes.Aún no se ha llegado a un buen acuerdo en cuanto a qué es exactamente lo que constituye una subcultura or-ganizacional. Sin embargo, hay consenso en cuanto a que las subculturas competentes pueden estar en conflictoal tratar de ganar partidarios de lo que consideran que debe ser la organización. Se está realizando una investiga-ción para determinar los efectos de las organizaciones y los equipos virtuales en cuanto a la creación de subcul-turas cuando los miembros no comparten un espacio de trabajo físico pero sí comparten tareas.En vez de considerar la cultura como un todo, es más conveniente pensar acerca de los factores determinan-tes que se pueden investigar sobre las subculturas, como el simbolismo verbal y no verbal. El simbolismo verbalincluye el lenguaje compartido que se utiliza para construir, transmitir y preservar los mitos, metáforas, visionesy humor de las subculturas. El simbolismo no verbal incluye los artefactos, ritos y ceremonias que se comparten;www.xlibros.com
46 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASHay tres amplios fundamentos organizacionales que debemosconsiderar en el análisis y diseño de sistemas de información: elconcepto de las organizaciones como sistemas, los diversos ni-veles de administración y la cultura organizacional en general.Las organizaciones son sistemas complejos compuestos desubsistemas interrelacionados e interdependientes. Además, lossistemas y subsistemas se caracterizan debido a que sus entornosinternos existen en un continuo, desde los más abiertos hasta losmás cerrados. Un sistema abierto permite el paso libre de los re-cursos (personas, información, materiales) a través de sus lími-tes; los sistemas cerrados no permiten el flujo libre de entradas osalidas. Las organizaciones y los equipos también se puedenorganizar en forma virtual, de manera que sus miembros se co-necten por medios electrónicos sin necesidad de estar en elmismo espacio de trabajo físico. Los sistemas de planificaciónde recursos son sistemas de información organizacional (empre-sarial) integrados que se desarrollan mediante software persona-lizado y propietario, para ayudar al flujo de información entre lasáreas funcionales de la organización. Soportan una perspectivade sistemas de la organización.O P O R T U N I D A D D E C O N S U L T O R Í A 2 . 3El poder de la pirámide“En realidad lo admiramos”, dice Paul LeGon. Como analistade sistemas, usted recibió una invitación para ayudar a Pyramid,Inc., una empresa editorial pequeña e independiente que se especia-liza en libros de portada rústica que están fuera de la corriente do-minante en la industria editorial.Paul continúa: “Manejamos lo que algunos consideran temasmarginales. Usted sabe, el poder de la pirámide, las profecías del findel mundo y cómo vivir en forma más saludable si pensamos en elcolor rosa. Algunas veces cuando las personas ven nuestros libros,sólo sacuden su cabeza y dicen: ‘Hmm... un tema poco común’.Pero no somos esclavos de ninguna filosofía en especial, y hemostenido mucho éxito. Tanto así que como tengo 24 años, la gente mellama el ‘niño rey’”. Paul se detiene para descifrar su reacción.Paul continúa: “Estoy en la cima como presidente y las áreasfuncionales como editorial, contabilidad, producción y marketingestán bajo mi cargo”.Ceil Toom, asistente de Paul, quien ha estado escuchando ensilencio hasta ahora, irrumpe con sus comentarios: “Los últimosexpertos en sistemas que hicieron un proyecto para nosotros reco-mendaron la creación de comités de enlace para los empleados entrelos departamentos de contabilidad, producción y marketing, demanera que pudiéramos compartir el inventario recién computari-zado y las cifras de ventas entre toda la organización. Ellos argu-mentaban que los comités de este tipo podrían reducir la duplicacióninnecesaria de los resultados, y que cada área funcional se integraríade una mejor manera con el resto de la empresa”.Paul entra en la historia y dice: “Estuvo bien —por lo menosdurante un tiempo y los empleados compartieron información, pero larazón por la que usted está aquí es que los empleados decían que notenían tiempo para las reuniones de los comités y no se sentían cómo-dos al compartir información con las personas de otros departamen-tos que estaban más arriba de lo que ellos estaban aquí en Pyramid”.De acuerdo con Paul y Ceil, ¿cuáles fueron los efectos deinstalar un sistema de información administrativa en Pyramid, Inc.en el que las personas tenían que compartir información en formasque no eran consistentes con su estructura? Proponga algunas for-mas generales de resolver este problema, de manera que los emplea-dos de Pyramid puedan obtener las cifras de ventas e inventario quenecesitan.la ropa de los que toman decisiones y los trabajadores; el uso, la ubicación y decoración de las oficinas; y los ritua-les para celebrar los cumpleaños, promociones y retiros de los miembros.Las subculturas coexisten dentro de las culturas organizacionales “oficiales”. La cultura con sanciones ofi-ciales puede prescribir un código de vestimenta, formas adecuadas de dirigirse a los superiores y a los compañe-ros trabajadores, y formas apropiadas de lidiar con el público. Las subculturas pueden ser factores determinantespoderosos de los requerimientos de información, disponibilidad y uso.Los miembros de la organización pueden pertenecer a una o más subculturas dentro de la organización. Lassubculturas pueden ejercer una poderosa influencia en el comportamiento de sus miembros, incluyendo lassanciones a favor o en contra del uso de los sistemas de información.La acción de comprender y reconocer las subculturas organizacionales predominantes puede ayudar a losanalistas de sistemas a vencer la resistencia al cambio que surge al momento de instalar un nuevo sistema de in-formación. Por ejemplo, el analista podría idear cierto tipo de capacitación para lidiar con cuestiones específicasde las subculturas organizacionales. También puede ser útil identificar las subculturas para el diseño de los siste-mas de soporte de decisiones que se ajustan a la interacción con grupos de usuarios específicos.RESUMENwww.xlibros.com
CAPÍTULO 2 • COMPRENSIÓN Y MODELADO DE LOS SISTEMAS ORGANIZACIONALES 47E X P E R I E N C I A D E H Y P E R C A S E ® 2Las culturas y subculturas organizacionales son factores deter-minantes importantes de la forma en que las personas utilizan lainformación y los sistemas de información. Al posicionar los siste-mas de información en el contexto de las organizaciones como unsistema más grande, es posible comprender que muchos factoresson importantes y hay que tenerlos en consideración al establecerlos requerimientos de información, y al diseñar e implementar lossistemas de información.Preguntas de HYPERCASE1. ¿Qué cambio organizacional importante se llevó a caborecientemente en MRE? ¿Qué departamento o departamentosestuvieron involucrados? ¿Por qué se efectuó el cambio?2. ¿Cuáles son los objetivos del Departamento de sistemas decapacitación y administración?3. ¿Clasificaría a MRE como una industria de servicios, fabricanteo ambos? ¿Qué tipo de “productos” son los que MRE“produce”? Sugiera cómo el tipo de industria en la que seencuentra MRE afecta a los sistemas de información que utiliza.4. ¿Qué tipo de estructura organizacional tiene MRE? ¿Cuálesson las implicaciones de esta estructura para MIS?5. Describa en un párrafo la “política” del Departamento desistemas de capacitación y mantenimiento en MRE. ¿Quiénesestán involucrados y cuáles son algunas de las cuestionesprincipales?6. Dibuje un diagrama de caso de uso que represente lasactividades del grupo Webster Design en MRE en cuanto aldesarrollo de los planes maestros del sitio y las instalaciones(use el sitio Web de MRE para obtener su información básica).FIGURA 2.HC1Haga clic en las palabras clave de HyperCasepara obtener más detalles“Parece que ha empezado bien en MRE. Meagrada saber que conoció a Snowden Evans.Como sabe, se reportará directamente con él du-rante su proyecto de consultoría. Como su asis-tente administrativa durante los últimos cincoaños, le puedo decir mucho sobre la empresa,pero recuerde que hay varias formas de obtenermás información. Le recomiendo entrevistar alos usuarios, observar sus entornos de toma dedecisiones y analizar los informes, gráficos ydiagramas en el archivo. Para ello puede hacerclic en el directorio telefónico y obtener una citacon quien desee entrevistar; o bien en el mapa deledificio para ver su distribución, o en el sitio Webcorporativo para ver las áreas funcionales y lasrelaciones jerárquicas formales en MRE”.“Muchas de las reglas de la vida corporativase aplican en el caso de MRE en HyperCase.Puede caminar libremente en muchas áreas pú-blicas. Pero si desea dar un paseo por una oficinaprivada, primero debe reservar una cita con unode nuestros empleados. Algunas áreas segurasquedan estrictamente prohibidas para usted comoexterno, ya que podría provocar un riesgo de seguridad”.“De todas formas, no creo que nos considere excesivamente re-servados, ya que puede suponer que cualquier empleado que le concedauna entrevista también le concederá el acceso al material de archivo ensu posesión, así como al trabajo actual en sus escritorios o pantallas”.“Por desgracia, algunas personas en la empresa parecen nuncaestar disponibles para los consultores. Le sugiero que sea persis-tente. Hay muchas formas de obtener información sobre las perso-nas y los sistemas de MRE. La creatividad tiene su recompensa.Con el tiempo descubrirá que los consultores de sistemas que siguensus corazonadas agilizan sus habilidades técnicas y nunca dejan depensar en resolver todos los acertijos en MRE, son los que obtienenlos mejores resultados”.“Recuerde utilizar varios métodos (entrevistas, observación einvestigación) para comprender lo que en MRE tratamos de decirle.¡Algunas veces las acciones, los documentos y las oficinas hablancon más fuerza que las palabras!”Hay muchas formas de describir gráficamente el sistema. Elanalista debe elegir una de estas herramientas lo más pronto posiblepara obtener una visión general del sistema. Estas metodologíasincluyen dibujar diagramas de flujo de datos a nivel de contexto,capturar las relaciones lo antes posible mediante diagramas de enti-dad-relación; dibujar diagramas de casos de uso o escribir escena-rios de casos de uso con base en las historias de los usuarios. Puedeser útil para el analista utilizar estos diagramas y técnicas al princi-pio del análisis para definir los límites y el alcance del sistema,además de que le será más fácil centrar la atención en las personasy sistemas que son externas al sistema que se va a desarrollar.Los diagramas de entidad-relación ayudan al analista de sistemasa comprender las entidades y relaciones que conforman el sistema or-ganizacional. Los diagramas E-R pueden describir las relaciones deuno a uno, de uno a varios, de varios a uno y de varios a varios.Los tres niveles de control administrativo son control operacio-nal, administración de nivel medio y control estratégico. El horizontetemporal de la toma de decisiones es distinto para cada nivel.www.xlibros.com
48 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASPALABRAS CLAVE Y FRASESactoradministración de nivel medioadministración de operacionesadministración estratégicaalcance del sistemaaperturacapacidad de interrelacionarsecaso de usocerrazóncuatro niveles de casos de usocultura organizacionaldiagrama de caso de usodiagrama de flujo de datos a nivel de contextodiagramas de entidad-relación (E-R)empresa virtualentidad (entidad fundamental)entidad asociativaentidad atributivaentornoequipo virtualescenario de caso de usointerdependientelímites organizacionalesnotación tipo pata de cuervoorganización virtualplanificación de recursos empresariales (ERP)retroalimentaciónsistemassistemas empresarialesPREGUNTAS DE REPASO1. ¿Cuáles son los tres grupos de fundamentos organizacionales que conllevan implicaciones para el desarrollo de lossistemas de información?2. ¿Qué significa decir que los subsistemas organizacionales están interrelacionados y son interdependientes?3. Defina el término límite organizacional.4. ¿Cuáles son los dos principales propósitos de la retroalimentación en las organizaciones?5. Defina la apertura en un entorno organizacional.6. Defina la cerrazón en un entorno organizacional.7. ¿Cuál es la diferencia entre una organización tradicional y una virtual?8. ¿Cuáles son los potenciales beneficios y una desventaja de una organización virtual?9. Dé un ejemplo de la forma en que los analistas de sistemas podrían trabajar con los usuarios como un equipo virtual.10. ¿Qué son los sistemas empresariales?11. ¿Qué es ERP y cuál es su propósito?12. ¿A qué problemas se enfrentan con frecuencia los analistas cuando tratan de implementar un paquete ERP?13. ¿Cuáles son los dos símbolos en un diagrama de caso de uso y qué representan?14. ¿Qué es un escenario de caso de uso?15. ¿Cuáles son las tres partes principales de un escenario de caso de uso?16. ¿Cuáles son los cuatro pasos para elaborar descripciones de casos de uso?17. ¿Cuáles son las cinco metáforas de altitud para describir un caso de uso en distintos niveles? ¿Qué representan?18. ¿Qué representa un proceso en un diagrama de flujo de datos a nivel de contexto?19. ¿Qué es una entidad en un diagrama de flujo de datos?20. ¿Qué significa el término diagrama de entidad-relación?21. ¿Qué símbolos se utilizan para dibujar diagramas E-R?22. Enliste los tipos de diagramas E-R.23. ¿Cuál es la diferencia entre una entidad, una entidad asociativa y una entidad atributiva?24. Liste los tres niveles amplios horizontales de administración en las organizaciones.25. ¿Cómo puede ayudar la comprensión de las subculturas organizacionales en el diseño de los sistemas de información?PROBLEMAS1. “Es difícil determinar qué queremos. Veo lo que están haciendo nuestros competidores, las tiendas de conveniencia, ypienso que deberíamos copiarlos. Después entran cien clientes y escucho a cada uno de ellos decir que debemos seguirigual, con nuestra pequeña tienda, empleados amigables y cajas registradoras antiguas. Luego, cuando leo un ejemplardel Supermarket News, dicen que la ola del futuro son las supertiendas de abarrotes, sin precios individuales etiquetadosy donde los escáneres de UPC sustituyen a los empleados. Me inclino hacia tantas direcciones que no puedo definirrealmente una estrategia para nuestra tienda de abarrotes”, admite Geoff Walsham, propietario y gerente de Jiffy Geoff’sGrocery Store.Aplique en un párrafo el concepto de límites organizacionales permeables para analizar el problema de Geoff encuanto a enfocarse en los objetivos organizacionales.2. Escriba siete enunciados que expliquen las relaciones de derecha a izquierda en la figura 2.8.www.xlibros.com
CAPÍTULO 2 • COMPRENSIÓN Y MODELADO DE LOS SISTEMAS ORGANIZACIONALES 493. Dibuje un diagrama de entidad-relación de una relación entre paciente-doctor.a. ¿Qué tipo de diagrama E-R es?b. Explique en uno o dos enunciados por qué se elabora el diagrama de la relación paciente-doctor de esta forma.4. Usted empezó a dibujar diagramas E-R tan pronto como entró a la organización al cuidado de la salud para la cual va adesarrollar un sistema. El miembro de su equipo es algo escéptico en cuanto al uso de diagramas E-R antes de empezarcon el diseño de la base de datos. En un párrafo convenza al miembro de su equipo de que vale la pena usar lo máspronto posible los diagramas E-R.5. Neil es el encargado de tomar las decisiones en la empresa Pepe’s Atlantic Sausage Company. Como hay variosproveedores de ingredientes y sus precios fluctúan, ha ideado varias formulaciones distintas para las diversassalchichas que fabrica, de acuerdo con la disponibilidad de ciertos ingredientes de proveedores específicos. Despuésordena los ingredientes correspondientes dos veces por semana. Aunque no puede predecir cuándo estarán disponibleslos ingredientes a un precio específico, la forma en que realiza los pedidos de provisiones se puede considerarrutinaria.a. ¿En qué nivel de administración está trabajando Neil? Explíquelo en un párrafo.b. ¿Qué atributos de su trabajo tendría que cambiar antes de poder clasificarlo en un nivel de administración distinto?Haga una lista de estos atributos.6. Muchas de las personas que trabajan en Pepe’s (problema 5) son extremadamente dedicadas, por lo cual han trabajadotoda su vida en la empresa. Otros sienten que la empresa está atrasada y debería utilizar sistemas de producción ysistemas de información más avanzados, además de optimizar la administración de la cadena de suministro para que laempresa sea más competitiva. Los miembros de un tercer grupo sienten que nadie aprecia lo que hacen. Describa conpalabras las diversas subculturas. Asígneles un nombre con base en sus emociones.7. Alice, del departamento de recursos humanos de la planta Cho Manufacturing recibe constantes preguntas de susempleados en relación con la cantidad que se deduce de su sueldo para cubrir seguro, impuestos, gastos médicos, retiroobligatorio y retiro voluntario. “Me quitan unas cuantas horas al día”, dice Alice.A ella le gustaría un sistema Web que permitiera a los usuarios iniciar sesión en forma segura para ver la información.Alice desea que el sistema se comunique con las empresas de seguros médicos y dentales para obtener la cantidadrestante en la cuenta del empleado durante el año. También le gustaría obtener los montos de retiro ahorrados, así comolos resultados de las inversiones. Alice se preocupa mucho por la privacidad y desea que el sistema haga que losempleados se registren y otorguen su permiso para obtener los montos financieros de las empresas de seguros médicos ydentales, así como de las empresas de retiro. Dibuje un diagrama de caso de uso que represente las actividades delsistema Prestaciones de los empleados.8. Escriba un escenario para el diagrama de caso de uso que construyó para la empresa Cho Manufacturing.9. ¿En qué nivel va a crear su caso de uso? Seleccione una de las cuatro metáforas de altitud y explique por qué laeligió.10. Cree un diagrama de flujo de datos a nivel de contexto para el sistema Prestaciones de los empleados, del problema 7.Aventure algunas suposiciones sobre los datos que entran y salen del proceso central. ¿Le parece que esto es mejor opeor para explicar a Alice el funcionamiento del sistema, en vez de usar el caso de uso y los escenarios de caso de uso?11. Dibuje un caso de uso y escriba un escenario de caso de uso para obtener dos o tres cuentas de correo electrónico. Pienseen los pasos necesarios para asegurar la seguridad.PROYECTOS EN GRUPO1. Haga grupos de cinco personas. Asigne una persona para que actúe como el diseñador del sitio Web, una para queescriba la copia del producto de una empresa, otra para que lleve el registro de los pagos de los clientes, una más paraque supervise la distribución y otra para atender a los clientes que tengan preguntas sobre el uso del producto. Despuésseleccione un producto simple (que no tenga muchas versiones). Algunos ejemplos adecuados son una cámara digital, unreproductor de DVD, un GPS una caja de dulces o una gorra de viaje especializada (a prueba de lluvia o para bloquear elsol). Ahora invierta 20 minutos en tratar de explicar al diseñador del sitio Web qué debe incluir en éste. Describa en unostres párrafos la experiencia que tuvo su grupo en cuanto a la coordinación. Proporcione más información sobre lacapacidad de interrelación de los subsistemas en la organización (su grupo).2. En un pequeño grupo, desarrolle un caso de uso y un escenario de caso de uso para hacer reservaciones aéreas, de hotely de automóvil para viajar a nivel nacional.3. Cambie su respuesta en el Proyecto en grupo 2 para incluir viajes internacionales. ¿Cómo cambian el caso de uso y elescenario de caso de uso?4. Dibuje con su grupo un diagrama de flujo de datos a nivel de contexto del sistema de registro de su escuela ouniversidad. Identifique cada una de las entidades y los procesos. Discuta con sus compañeros por qué parece haberdistintas formas de dibujar el diagrama; llegue a un consenso con ellos en cuanto a la mejor forma de dibujar eldiagrama y defienda su elección en un párrafo. Ahora trabaje con los miembros de su grupo y siga los pasosapropiados para desarrollar un diagrama E-R y cree uno para el sistema de registro de su escuela o universidad.Asegúrese de que su grupo indique si la relación que describe es de uno a uno, de uno a varios, de varios a uno o devarios a varios.www.xlibros.com
50 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASBIBLIOGRAFÍA SELECCIONADABleeker, S.E. “The Virtual Organization”. Futurist, Vol. 28, Núm. 2, 1994, pp. 9-14.Chen, P. “The Entity-Relationship Model—Towards a Unified View of Data”. ACM Transactions on Database Systems, Vol. 1,marzo de 1976, pp. 9-36.Ching, C., C. W. Holsapple y A. B. Whinston. “Toward IT Support for Coordination in Network Organizations”. InformationManagement, Vol. 30, Núm. 4, 1996, pp. 179-199.Cockburn, A. “Use Case Icons”, http://alistair.cockburn.us/Use+case+icons?version=8339&diff=8339&with=6296. Últimoacceso en marzo 18, 2009.Davis, G.B. y M. H. Olson. Management Information Systems: Conceptual Foundation, Structure, and Development, 2da. ed.Nueva York: McGraw-Hill, 1985.Galbraith, J. R. Organizational Design, Reading, MA: Addison-Wesley, 1977.Kendall, K. E., J. R. Buffington y J.E. Kendall. “The Relationship of Organizational Subcultures to DSS User Satisfaction”.Human Systems Management, marzo 1987, pp. 31-39.Kulak, D. y E. Guiney. Use Cases: Requirement in Context, 2da. ed. Boston: Pearson Education, 2004.PeopleSoft. Disponible en: www.peoplesoft.com/corplen/public_index.jsp. Acceso en junio 3, 2003.Warkentin, M., L. Sayeed y R. Hightower. “Virtual Teams versus Face-to-Face Teams: An Exploratory Study of a Web-BasedConference System”. En Emerging Information Technologies: Improving Decisions, Cooperation, and Infrastructure.Editado por K. E. Kendall, pp. 241-262. Thousand Oaks, CA: Sage Publications, 1999.Yager, S.E. “Everything’s Coming Up Virtual”. Disponible en: www.acm.org/crossroads/xrds4-1/organ.html. Acceso en junio3, 2003.www.xlibros.com
CAPÍTULO 2 • COMPRENSIÓN Y MODELADO DE LOS SISTEMAS ORGANIZACIONALES 51E P I S O D I O 2CASO DE LA CPUALLEN SCHMIDT, JULIE E. KENDALL Y KENNETH E. KENDALLDescripción gráfica de las relaciones“Entonces el proyecto implica algo más que sólo realizar trabajo de mantenimiento en los programas actuales”, dice Chip.“¿Vamos a usar una metodología formal para analizar y diseñar el nuevo sistema?”“Sí”, responde Anna. “También vamos a usar Microsoft Visio para crear y modificar los diagramas, así como cierta infor-mación simple del repositorio. También tenemos una herramienta CASE, Visible Analyst, para analizar y diseñar el sistema. 1Hace poco instalamos los productos en la computadora de la oficina”.Con unos cuantos clics del ratón, Anna produce un diagrama de flujo de datos a nivel de contexto (vea la figura E2.1).“Es muy conveniente empezar a pensar en el sistema de esta manera”, dice Anna al momento en que ven el diagrama en lapantalla.Chip asiente y dice: “Puedo ver con mucha facilidad lo que crees que está ocurriendo con el sistema. Por ejemplo, veo quela entidad externa Administración suministra las preguntas sobre hardware y software y recibe a cambio las respuestas corres-pondientes. Muestra al sistema dentro de la organización de mayor tamaño”.“También dibujé un diagrama E-R preliminar del sistema”, dice Anna al momento de mostrar el diagrama de entidad-re-lación en la pantalla (vea la figura E2.2). “Tal vez haya que modificarlo a medida que aprendamos más sobre el sistema”.“Sí, las relaciones de varios a varios y de uno a varios son muy claras cuando lo vemos de esta forma”, dice Chip, viendoa la pantalla.“Hay una vista más del sistema”, continúa Anna al momento en que abre el diagrama de caso de uso. “Éste es el diagramade caso de uso preliminar para nuestro sistema (vea la figura E2.3). Vamos a utilizarlo para obtener retroalimentación de losusuarios que nos puede ser de utilidad. Los casos de uso no están completos, pero les puedo mostrar uno de ellos”. Anna haceFormulario para nueva computadoraSe recibió softwareSe reparó computadoraInforme maestro de hardwareInforme maestro de softwareEE 4ContextoRespuesta a pregunta de hardwareRespuesta a pregunta de softwarePregunta de hardwarePregunta de softwarePregunta de software Respuesta a preguntaEE 1AdministraciónEE 2CuerpodocenteSistema deinventario decomputadorasSoportede oficinaEE 5EE 3MantenimientoEE 1AdministraciónEE 2CuerpodocenteDepto. deembarques/recepciónFIGURA E2.1Diagrama de flujo de datos a nivelde contexto del sistema actual.1Para obtener más detalles sobre cómo empezar a usar Visible Analyst, vea la obra de Allen Schmidt, Working withVisible Analyst, 2da. edición (Upper Saddle River, NJ: Prentice Hall, 2004).www.xlibros.com
52 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMAStieneSoftwarese realiza en Computadora puede tener Hardwarey softwarese encuentradentro detiene provee garantíaDistribuidorCuartoSistema operativoMantenimientode computadoraFIGURA E2.2Diagrama de entidad-relación delsistema actual.Departamento deembarques/recepciónUsuario del softwareCrear categoríade software<<extiende>>MantenimientoSoporte de oficinaAdministraciónAgregarnueva computadoraAgregar softwareProducir informe deinversión de hardwareProducir informe dereferencia cruzadade hardware y softwareConsultar clasesde capacitaciónFIGURA E2.3Diagrama de caso de uso para elsistema de cómputo de la CPU.www.xlibros.com
CAPÍTULO 2 • COMPRENSIÓN Y MODELADO DE LOS SISTEMAS ORGANIZACIONALES 53clic en el símbolo del caso de uso para mostrar la descripción del caso de uso en el repositorio que apareceen la figura E2.4.“Ya tienes un buen comienzo aquí”, continúa Chip a medida que echa un vistazo a la descripción delcaso de uso. “Esto nos ayuda a comprender las actividades que se realizan. Vamos a trabajar y ver qué hayque hacer ahora”.EJERCICIOSE-1. Use Microsoft Visio o Visible Analyst para ver e imprimir el diagrama de flujo de datos a nivel decontexto para el sistema de inventario de computadoras, como lo hicieron Chip y Anna.E-2. Use la característica Repository (Repositorio) o la página Web Repository (Repositorio Web) para verla entrada para el proceso central.E-3. Use Microsoft Visio o Visible Analyst para ver e imprimir el diagrama de entidad-relación para elsistema de inventario de computadoras.E-4. Explique por qué las entidades externas en el diagrama a nivel de contexto no se encuentran en eldiagrama de entidad-relación.Nombre del caso de uso: Agregar computadoraÁrea: Inventario de computadorasActores: Departamento de embarque/recepción, MantenimientoInteresados: Cuerpo docente, estudiante, personalNivel: AzulDescripción: Agregar una nueva computadora y generar una lista de todas las máquinas para instalación de softwareEvento desencadenador: Se hizo clic en la opción del menú Add Computer (Agregar computadora)Tipo de desencadenador: Externo TemporalPasos realizados (ruta principal)1. Se introduce la información sobre las nuevas computadoras.2. Se agrega la computadora al Archivo maestro de computadoras.3. Se actualizan los pedidos pendientes con las computadoras quese recibieron.4. Se produce el informe de Listado de instalaciones para todoslos modelos de escritorio.5.Se produce un informe de Listado de instalación de software en elque se muestra todo el software estándar para todas lascomputadoras que se recibieron.Información para los pasosFactura y hojas de especificacionesArchivo maestro de computadorasTabla de la base de datos Pending Order(Pedidos pendientes).Archivo maestro de computadorasArchivo maestro de computadorasPrecondiciones: El departamento de recepción recibió una computadora.Postcondiciones: Se agregó una computadora a la base de datos y se generaron informes.Suposiciones: El usuario inició sesión exitosamente con acceso a la pantalla Add Computer (Agregar computadora).Garantía de éxito: Que se haya agregado una computadora a la base de datos y se hayan impreso los informes requeridos.Garantía mínima: Que se haya recibido la computadora y se agregue más tarde.Requerimientos cumplidos: Agregar e instalar nuevas computadoras.Cuestiones pendientes: Curso de acción a seguir cuando las computadoras pendientes no coinciden con las que se recibieron.Prioridad (opcional): AltaRiesgo (opcional): MedioFIGURA E2.4Escenario de caso de uso para elsistema computacional de la CPU.www.xlibros.com
54 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASE-5. Explique por qué las entidades ADMINISTRACIÓN y CUERPO DOCENTE se encuentran en ambos lados del procesoen el diagrama a nivel de contexto.E-6. Use Microsoft Visio o Visible Analyst para ver e imprimir el diagrama de caso de uso para el sistema de inventario decomputadoras.E-7. Agregue los siguientes actores y casos de uso al diagrama de casos de uso:a. El actor CUERPO DOCENTE al lado izquierdo del diagrama de casos de uso.b. Conectar el actor CUERPO DOCENTE con el caso de uso CONSULTAR CLASES DE CAPACITACIÓN.c. Como las computadoras pueden tener software instalado para un laboratorio computacional específico, el personalde soporte de oficina puede hacerse cargo de instalar software en las. Conecte el actor SOPORTE DE OFICINA alcaso de uso AGREGAR SOFTWARE.d. Agregue dos nuevos casos de uso debajo del caso de uso CONSULTAR CLASES DE CAPACITACIÓN: CONSUL-TAR EXPERTO DE SOFTWARE y debajo de éste, CONSULTAR INFORMACIÓN DE SOFTWARE.e. Conecte el actor CUERPO DOCENTE a los casos de uso CONSULTAR EXPERTO DE SOFTWARE y CONSUL-TAR INFORMACIÓN DE SOFTWARE.f. Conecte el actor ADMINISTRACIÓN al caso de uso CONSULTAR EXPERTO DE SOFTWARE.E-8. Agregue el caso de uso INSTALAR COMPUTADORA DE ESCRITORIO al área superior derecha del diagrama. Estecaso de uso extiende al caso de uso AGREGAR COMPUTADORA.E-9. Agregue una descripción para el caso de uso AGREGAR SOFTWARE. Esta descripción debe contener la siguiente in-formación:a. Obtenga el nombre del caso de uso y los actores del diagrama de casos de uso. Los interesados y el nivel son losmismos que en la figura E2.3.b. La descripción debe ser: Agregar nuevo software a la tabla Software de la base de datos e imprimir un listado deinstalación.c. La actividad empieza (se desencadena) cuando el usuario hace clic en el elemento de menú Add Software (Agregarsoftware).d. Los pasos realizados y la información para los pasos son:e. Las precondiciones son el software que se recibió. Las postcondiciones son que el software se agregó a la base dedatos y se crearon los informes. Las suposiciones son que el usuario inició sesión con éxito y tiene acceso a la pan-talla Add Software (Agregar software). Una garantía de éxito es que se haya agregado el software a la base de datosy se haya impreso el informe requerido. Una garantía mínima es que se haya recibido el software. Los objetivoscumplidos son agregar e instalar nuevo software. La cuestión pendiente es cómo determinar qué software instalar encuáles equipos. La prioridad es alta y el riesgo es medio.E-10. Escriba la descripción para el caso de uso PRODUCIR INFORME DE REFERENCIA CRUZADA DE HARDWARE YSOFTWARE. Use el diagrama de casos de uso para determinar la información del encabezado y haga todas las suposi-ciones razonables. Los pasos serían leer un registro de software, usar esa información para leer la tabla relacional dehardware-software y después leer el registro de hardware. Use el registro de hardware para imprimir una línea en la quese acumulen los totales. Imprima subtotales y totales generales. Ésta es una actividad de nivel medio y bajo riesgo. Lasprecondiciones son que la información se debe haber agregado antes a las tablas de base de datos apropiadas. Las postcon-diciones son que se imprimió el informe. Las suposiciones son que toda la información en las tablas de base de datos escorrecta. Una garantía de éxito sería que se haya creado el informe con éxito. Una garantía mínima sería que no se hayapodido imprimir el informe. Los objetivos cumplidos son producir información sobre el software instalado en cada má-quina. Las cuestiones pendientes son: ¿Qué pasa si el software es antiguo y no está instalado actualmente en ningunamáquina? ¿Cómo se debe producir el informe: impreso, en un archivo PDF o habría que consultar qué paquete de soft-ware se debe utilizar?El software se introduce en el nuevo sistema y se valida Formulario de software recibidoEl software se agrega al Archivo maestro de software Archivo maestro de softwareSe produce la Lista de instalación de software Archivo maestro de software, PedidoSe notifica al usuario de software sobre el software instalado Pedidowww.xlibros.com
CAPÍTULO 2 • COMPRENSIÓN Y MODELADO DE LOS SISTEMAS ORGANIZACIONALES 55E-11. Escriba la descripción para el caso de uso PRODUCIR INFORME DE INVERSIÓN DE HARDWARE. Use el diagramade casos de uso para definir la información del encabezado. Los pasos implican leer cada registro de hardware, contar elnúmero de equipos y calcular el monto total invertido en ellos para cada modelo de computadora. Calcular subtotalespara cada marca de computadora y un gran total al final del informe. Toda la información proviene de la tabla de base dedatos Hardware Master (Archivo maestro de hardware). Haga todas las suposiciones razonables en cuanto a las precon-diciones, postcondiciones, suposiciones, garantía de éxito, garantía mínima, objetivos cumplidos, cuestiones pendientes,prioridad y riesgo.E-12. Escriba la descripción para el caso de uso CONSULTAR CLASES DE CAPACITACIÓN. Use el diagrama de casos deuso para definir la información del encabezado. Los pasos implican introducir información en el formulario Web, validarla información y almacenar los datos en una tabla de base de datos llamada Training Request (Solicitud de capacitación).Haga todas las suposiciones razonables en cuanto a las precondiciones (por ejemplo, si el software tiene que estar com-prado de antemano), postcondiciones, suposiciones, garantía de éxito, garantía mínima, objetivos cumplidos, cuestionespendientes, prioridad (ésta sería una tarea de alta prioridad) y riesgo.Los ejercicios en los que se antepone un icono www indican material de valor agregado disponible en el sitio Web www.pearsonhighered.com/kendall. Los estudiantes pueden descargar un archivo de muestra de Microsoft Visio, Visible Analyst, Microsoft Project o Microsoft Access quepueden usar para completar los ejercicios. O también pueden resolver muchos de los ejercicios a mano si no tienen el software a su dis-posición.www.xlibros.com
56 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMAS56C A P Í T U L O 3Administración de proyectosOBJETIVOS DE APRENDIZAJEAl completar este capítulo usted podrá:1. Comprender cómo se inician y seleccionan los proyectos, definir un problema denegocios y determinar la viabilidad de un proyecto propuesto.2. Hacer un inventario y valorar los componentes actuales y propuestos de hardware ysoftware, y determinar la forma en que brindan soporte a las interacciones de loshumanos con la tecnología.3. Evaluar las soluciones considerando ventajas y desventajas de crear software personalizado,comprar software COTS y subcontratar un proveedor de servicios de aplicaciones.4. Pronosticar y analizar los costos y beneficios tangibles e intangibles.5. Planear un proyecto al identificar las actividades y programarlas.6. Administrar los miembros del equipo y las actividades de análisis y diseño, de maneraque se cumplan los objetivos del proyecto sin exceder el tiempo programado.7. Escribir y presentar en forma profesional una propuesta de sistemas efectiva, conénfasis tanto en el contenido como en el diseño.Iniciar proyectos, determinar su viabilidad, programar fechas y tiempospara su cumplimiento, planificar y después administrar las actividades y alos miembros del equipo para optimizar la productividad son aptitudes queel analista de sistemas debe dominar. Como tales, se consideran los funda-mentos de administración de los proyectos.Un proyecto de sistemas empieza con problemas o con oportunidadesde realizar mejoras en una empresa que, con frecuencia, surgen a medida que la organizaciónse adapta al cambio. La creciente popularidad del comercio electrónico evidencia cambiosfundamentales a medida que las empresas originan sus negocios en —o transfieren sus ope-raciones internas y sus relaciones externas a— Internet. Los cambios que requieren una solu-ción de sistemas ocurren tanto en el entorno legal como en el industrial. Los analistas trabajancon los usuarios para crear la definición de un problema que refleje los sistemas y problemasactuales de la empresa. Una vez que se sugiere un proyecto, el analista de sistemas trabajarápidamente con los encargados de tomar las decisiones para determinar si es viable. Si seaprueba un proyecto para realizar un estudio completo de sistemas, las actividades del pro-yecto se programan por medio de herramientas tales como los gráficos de Gantt y los diagra-mas de Técnicas de evaluación y revisión de programas (PERT) para completar el proyecto atiempo. Parte del proceso de asegurar la productividad de los miembros del equipo de análisisde sistemas es administrar de manera efectiva sus actividades programadas. Este capítulo estádedicado a analizar los fundamentos de la administración de proyectos.INICIACIÓN DEL PROYECTOLos proyectos de sistemas tienen muchos orígenes y diversas razones. Algunos de los proyectossugeridos sobrevivirán varias de las etapas de evaluación en las que usted (o usted y su equipo)debe trabajar; otros no deben sobrevivir (ni sobrevivirán) tanto. Los empresarios sugieren pro-www.xlibros.com
CAPÍTULO 3 • ADMINISTRACIÓN DE PROYECTOS 57yectos de sistemas por dos amplios tipos de razones: 1) porque experimentan problemas que se prestan por sísolos a las soluciones de sistemas y 2) porque reconocen oportunidades para mejorar mediante la actualización omodificación de los sistemas existentes, o la instalación de sistemas nuevos. Ambas situaciones pueden surgir amedida que la organización se adapta y hace frente a los cambios naturales y evolucionarios.Problemas en la organizaciónA los gerentes no les gusta que su organización tenga problemas y mucho menos hablar sobre ellos o compar-tirlos con alguien externo. Sin embargo, los buenos gerentes están conscientes de que es imprescindible reconocerlos síntomas de los problemas o, en una etapa posterior, diagnosticar los problemas en sí y luego confrontarlos, siquieren que su empresa siga funcionando con el mayor potencial posible.Los problemas salen a la superficie de muchas formas. Una manera de conceptualizar qué son los problemasy cómo surgen es considerarlos como situaciones en las que nunca se cumplieron los objetivos o dejaron de cum-plirse en algún punto. La retroalimentación práctica proporciona información sobre el hueco entre el rendimientoactual y el esperado, y, de esta forma, ayuda a destacar los problemas.En algunos casos, los problemas que requieren de los servicios de los analistas de sistemas se descubrendebido a que no se están cumpliendo las medidas de rendimiento. Los problemas (o síntomas de ellos) con pro-cesos que no son visibles en el proceso de salida y que podrían requerir la ayuda de un analista de sistemas; in-cluyen errores excesivos y un trabajo que se desempeña con mucha lentitud, en forma incompleta, incorrecta oque simplemente no se lleva a cabo. Otros síntomas de los problemas se hacen evidentes cuando las personas nocumplen con los objetivos de rendimiento de referencia. Los cambios en el comportamiento de los empleados,como niveles altos e inusuales de ausentismo, una gran inconformidad en el trabajo o mucha rotación de personalson factores que alertan a los gerentes sobre problemas potenciales. Cualquiera de estos cambios, por sí solos ocombinados, podría ser motivo suficiente para solicitar la ayuda de un analista de sistemas.Aunque las dificultades como las que acabamos de describir ocurren en la organización, la retroalimenta-ción acerca de la forma en que la organización cumple con los objetivos designados puede provenir del exterior,en forma de quejas o sugerencias de los clientes, distribuidores o proveedores, además de la pérdida de ventas ouna reducción inesperada en las mismas. Esta retroalimentación proveniente del entorno externo es en extremoimportante y no debe ignorarse.En la figura 3.1 se muestra un resumen de síntomas de problemas y metodologías útiles para detectarlos.Note que revisar la salida, observar o investigar el comportamiento de los empleados y escuchar la retroalimen-tación de las fuentes externas son valiosas herramientas para detectar problemas. Al reaccionar a las historias delos problemas en la organización, el analista de sistemas desempeña los roles de consultor, experto de soporte yagente de cambio, como vimos en el capítulo 1. Como podría esperar, los roles para el analista de sistemas cam-bian sutilmente cuando se inician los proyectos, ya que el enfoque está en las oportunidades de mejorar en vez deestar en la necesidad de resolver los problemas.Definición del problemaSin importar que utilice el SDLC clásico o una metodología orientada a objetos, el analista primero define losproblemas y objetivos en el sistema. Éstos forman la base para determinar qué debe lograr el sistema. Los méto-dos como Seis Sigma (el capítulo 16 proporciona más información) empiezan con una definición del problema.Revisar la salida y compararla con loscriterios de rendimiento.Observar el comportamiento delos empleados.Escuchar la retroalimentación externa de:DistribuidoresClientesProveedoresDemasiados erroresEl trabajo se completa con lentitudEl trabajo se hace en forma incorrectaEl trabajo se hace en forma incompletaNo se hace ningún trabajoNiveles altos de ausentismoMucha inconformidad en el trabajoMucha rotación de empleadosBusque estas señales específicas:Para identificar los problemasQuejasSugerencias para mejorarPérdida de ventasVentas más bajasFIGURA 3.1Comprobar la salida, observar elcomportamiento de los empleadosy escuchar la retroalimentaciónson todas formas de ayudar alanalista a destacar los problemas yoportunidades de sistemas.www.xlibros.com
58 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASPor lo general, la definición de un problema contiene cierta clase de declaración del mismo, sintetizada enuno o dos párrafos. A ésta le siguen una serie de cuestiones o piezas independientes importantes del problema.Estas cuestiones van seguidas de una serie de objetivos o metas que coincidan con cada uno de los puntos es-tablecidos en las cuestiones. Las cuestiones son la situación actual; los objetivos son la situación deseada. Losobjetivos pueden ser muy específicos o se pueden redactar mediante una declaración general.He aquí algunos ejemplos de preguntas de negocios relacionadas con los objetivos de una empresa: ¿Cuáles son los propósitos de la empresa? ¿Es una empresa con o sin fines de lucro? ¿Planea la compañía crecer o expandirse? ¿Cuál es la postura de la empresa (cultura) en cuanto a la tecnología? ¿Cuál es el presupuesto que la empresa tiene asignado para la TI? ¿El personal de la empresa tiene la experiencia requerida?Sobra decir que el analista de sistemas debe comprender la forma en que funciona la empresa.La última parte de la definición del problema contiene los requerimientos, las cosas que se deben lograr,junto con las posibles soluciones y las restricciones que limitan el desarrollo del sistema. La sección de requeri-mientos puede incluir seguridad, capacidad de uso, requerimientos gubernamentales, etcétera. A menudo las res-tricciones incluyen la palabra no para indicar una limitación, y pueden contener restricciones en el presupuesto olímites de tiempo.La definición del problema se produce después de terminar con las entrevistas, las observaciones y el aná-lisis de los documentos con los usuarios. El resultado de recopilar esta información es una enorme cantidad dehechos y opiniones importantes que debe sintetizarse. El primer paso para producir la definición del problema esO P O R T U N I D A D D E C O N S U L T O R Í A 3 . 1El sonido más dulce que haya sorbidoFélix Straw, quien representa a uno de varios distribuidores enEE.UU., del refresco europeo Sipps, examina con desagrado elmapa del clima en un periódico, donde la mayor parte de los Esta-dos Unidos aparece cubierta del rojo oscuro que indica la anticipadaola de calor primaveral, sin signos de que vaya a pasar. Apuntandoal diario, dice al grupo de sistemas al que usted pertenece: “Es lomejor que nos pudo ocurrir... o así debería ser. Pero cuando tuvi-mos que colocar nuestros pedidos hace tres meses, ¡no teníamosidea de que esta monstruosa ola de calor iba a devorar el país de estaforma!”. Señalando con la cabeza una fotografía de la planta euro-pea en la pared, continúa: “Tenemos que ser capaces de decirlescuando las cosas se calienten por acá, para obtener suficiente pro-ducto. De lo contrario perderemos todas las oportunidades. Estoocurrió hace dos años y casi nos eliminó del mercado”.“Cada uno de nuestros distribuidores se reúne con nuestros ge-rentes de distrito para realizar una planeación de tres meses. Cuandoestamos de acuerdo, enviamos nuestros pedidos a las oficinas gene-rales en Europa. Ellos hacen sus propios ajustes, embotellan las bebi-das y luego recibimos nuestros pedidos modificados entre 9 y 15semanas más tarde. Pero necesitamos formas de decirles lo que estáocurriendo ahora. Incluso hay varias supertiendas que están abriendoaquí. Deben saber que tenemos una demanda muy alta”.Corky, su asistente, asiente y dice: “Sí, por lo menos deberíananalizar nuestras ventas del año pasado en este periodo. Algunasprimaveras son calientes, otras no tanto”.Straw coincide y dice: “Sería música para mis oídos, algorealmente dulce, si pudieran trabajar con nosotros para detectar lastendencias y los cambios, y después responder con rapidez”.Stern’s, con base en Blackpool, Inglaterra, es un fabricanteeuropeo de bebidas, además de ser el desarrollador y productor deSipps, una bebida no carbonatada dulce, con sabor a frutas, sin al-cohol, que se sirve fría y es muy popular cuando hace calor. Conexcelentes ventas en Europa y una popularidad en aumento en losEstados Unidos desde su presentación cinco años atrás, Sipps hatenido dificultades para administrar el inventario en forma adecuaday satisfacer la demanda de los clientes estadounidenses, que se veafectada por las fluctuaciones de temperatura estacionales del año.Los lugares con clima cálido durante todo el año y muchos turistas(como Florida y California) tienen grandes pedidos permanentes,pero otras áreas del país se podrían beneficiar de un proceso depedidos menos incómodo y más receptivo. Sipps se distribuye através de una red de distribuidores locales esparcidos por todoEstados Unidos y Canadá.Como uno de los analistas de sistemas asignado para trabajarcon los distribuidores de Sipps en los EE.UU., empiece su análisishaciendo una lista de algunos de los síntomas y problemas clave queidentificó después de estudiar los flujos de información, el procesode pedidos y la administración del inventario, y después de entre-vistar al Sr. Straw y a su asistente. Describa en un párrafo los pro-blemas que podrían indicar la necesidad de una solución desistemas.Nota: Esta oportunidad de consultoría está inspirada en el artículo de J. C.Pérez, “Heineken’s HOPS Software Keeps A-Head on Inventory”, PC Week,Vol. 14, Núm. 2, enero 13, 1997, pp. 31 y 34.www.xlibros.com
CAPÍTULO 3 • ADMINISTRACIÓN DE PROYECTOS 59encontrar varios puntos que se puedan incluir en una cuestión. Los puntos importantes se pueden identificar en laentrevista de distintas formas:1. Los usuarios pueden identificar una cuestión, asunto o tema que se repita varias veces; en ocasiones puedenser distintas personas en varias entrevistas.2. Los usuarios pueden comunicar las mismas metáforas, como decir que la empresa es un viaje, un juego deguerra, un organismo, una máquina, etcétera.3. Los usuarios pueden hablar mucho sobre un tema.4. Los usuarios le pueden decir abiertamente: “Éste es un problema importante”.5. Los usuarios pueden comunicar la importancia mediante el lenguaje corporal o hablar tajantemente sobreuna cuestión.6. El problema puede ser lo primero que mencione el usuario.Una vez creadas las cuestiones hay que declarar los objetivos. A veces, el analista debe realizar una entre-vista de seguimiento para obtener información más precisa sobre los objetivos. Una vez declarados éstos, hayque determinar la importancia relativa de las cuestiones o de los objetivos. Si no hay suficientes fondos para de-sarrollar el sistema completo, primero es necesario completar los objetivos más críticos. Los usuarios son quie-nes pueden identificar mejor los objetivos más críticos (con la ayuda de los analistas), ya que son expertos dedominio en su área de negocios y saben cómo trabajar mejor con las tecnologías en la organización.Una de las técnicas es pedir a los usuarios que asignen una ponderación para cada cuestión u objetivo delprimer borrador de la definición del problema. Es un juicio subjetivo por parte del usuario, pero si varios deellos asignan ponderaciones y se obtiene un promedio de todas, el resultado podría reflejar mejor la situación.Después de determinar las ponderaciones se modifica la secuencia del orden de las cuestiones y objetivos de ladefinición del problema en orden de mayor a menor importancia. Existe software como Expert Choice (www.expertchoice.com) y otros paquetes de software de soporte de decisiones que pueden ayudar con los procesos depesar y asignar prioridades a los objetivos.Además de analizar los datos y entrevistar personas, trate de presenciar el problema por su cuenta. Al anali-zar la misma situación, tal vez un empleado pueda ver un problema en forma muy distinta a un analista de siste-mas. Esto también ofrece a los analistas la oportunidad de confirmar sus hallazgos. De esta forma utilizan variosmétodos, con lo cual fortalecen el caso para tomar la acción apropiada.UN EJEMPLO DE DEFINICIÓN DE PROBLEMA: EL SERVICIO DE BANQUETES CATHERINE. El Servicio de banquetesCatherine es una pequeña empresa que provee servicios de alimentos, recepciones y banquetes para reuniones denegocios y sociales como comidas formales y bodas. El amor de Catherine por la cocina y su talento para prepararplatillos finos inspiraron este negocio. Al principio era una pequeña empresa con unos cuantos empleados quetrabajaban en pequeños proyectos. Catherine se reunía con los clientes para determinar el número de personas,el tipo de alimentos y demás información necesaria para dar servicio a un evento. Su reputación como excelenteproveedora de banquetes de alta calidad hizo aumentar su volumen de negocios. Gracias a la construcción de unnuevo centro de convenciones y a la próspera comunidad comercial en la ciudad, aumentó el número de eventosde servicio de banquetes.Catherine administraba el negocio mediante el uso de hojas de cálculo y un procesador de palabras, pero sele dificultaba estar al tanto de las interminables llamadas telefónicas sobre los tipos de comida disponibles, loscambios en el número de invitados que iban a asistir al evento y la disponibilidad de artículos especiales, comoplatillos de comida vegetariana, bajos en calorías o en carbohidratos, etc. La decisión de Catherine de contratarvarios empleados de medio tiempo para cocinar y ayudar en los eventos complicó la programación del personal,proceso que estaba abrumando al nuevo gerente de recursos humanos. Catherine decidió contratar una empresade consultoría de TI y negocios para ayudarla a lidiar con los problemas a los que se enfrentaba su empresa deservicio de banquetes.Después de realizar varias entrevistas y observar al personal clave, los consultores encontraron las siguientescuestiones:1. El chef principal hacía un pedido de provisiones por evento. Los proveedores podrían ofrecer descuentos sise pidieran cantidades mayores de una sola vez para todos los eventos que se llevaran a cabo en ciertoperiodo.2. A menudo los clientes llamaban para cambiar el número de invitados para un evento, y algunos de esoscambios se realizaban sólo uno o dos días antes del día programado para el evento.3. Catherine y su personal requerían demasiado tiempo para atender cada solicitud de servicio;aproximadamente el 60 por ciento de las llamadas terminaba contratando los servicios.4. Algunas veces no había disponibilidad de empleados por conflictos de horario, y algunos eventos nocontaban con el suficiente personal. Las quejas sobre la puntualidad del servicio se estaban haciendo másfrecuentes.www.xlibros.com
60 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMAS5. Catherine no tiene información sintetizada en cuanto al número de eventos y los tipos de comidas. Seríaconveniente contar con información sobre las tendencias para ayudarle a guiar a sus clientes a la hora deelegir sus platillos.6. Por lo general, los eventos se llevan a cabo en hoteles u otros salones que proveen servicios de vajilla, mesas ysillas. Hay problemas en cuanto a tener suficientes meseros debido a los cambios en el número de invitados.La figura 3.2 muestra la definición del problema. Observe las ponderaciones a la derecha, las cuales repre-sentan un promedio de las asignadas por cada empleado. Los objetivos coinciden con los problemas. Cada obje-tivo se utiliza para crear los requerimientos de los usuarios.Definición del problemaEl Servicio de banquetes Catherine está experimentando problemas para atender el número de llamadas de rutinade los clientes, así como para coordinarse con los proveedores externos de productos e instalaciones. El aumentoen el número de personal de medio tiempo está provocando conflictos en los horarios y eventos subatendidos.Problema1. El contacto del cliente toma una exorbitante cantidad de tiempo en las preguntas de rutina.2. Administrar empleados de medio tiempo consume mucho tiempo y provoca conflictos en los horarios.3. Es difícil tener en cuenta los cambios de último minuto en los eventos.4. Se piden provisiones para cada evento. A menudo los envíos se reciben varias veces al día.5. Con frecuencia hay problemas para comunicar los cambios a las instalaciones de los eventos.6. Hay poca información histórica sobre los clientes y las comidas.Objetivos1. Proveer un sistema Web para que los clientes obtengan información sobre los precios y coloquen sus pedidos.2. Crear o comprar un sistema de recursos humanos con un componente para programar horarios.3. Una vez que los clientes hayan firmado un contrato para un evento, proveerles con acceso Web a su cuenta ylos medios para que actualicen el número de invitados. Notificar a la administración sobre estos cambios.4. Proveer los medios para determinar las cantidades de provisiones requeridas por eventos que ocurran en formaconcurrente dentro de un periodo dado.5. Proveer un sistema para comunicar los cambios al personal clave en las instalaciones de los eventos.6. Almacenar todos los datos de los eventos y tener información sintetizada disponible en varios formatos.Requerimientos1. El sistema debe ser seguro.2. Los gerentes de los eventos deben introducir la retroalimentación al momento de cerrar cada evento.3. Debe haber un medio para que las instalaciones de los eventos puedan cambiar a la persona que servirá como contacto.4. El sistema debe ser fácil de usar para personas sin conocimientos técnicos.Restricciones1. Los costos de desarrollo no deben exceder de $50,000.2. El sitio Web inicial para los pedidos de los clientes deberá estar listo para el 1 de marzo, de manera que sepuedan atender las solicitudes de fiestas de graduación y bodas.1097653PonderacionesFIGURA 3.2Definición del problema para Servicio debanquetes Catherine, desarrollado con laayuda de algunos usuarios.www.xlibros.com
CAPÍTULO 3 • ADMINISTRACIÓN DE PROYECTOS 61Después, estos requerimientos se utilizan para crear casos de uso y un diagrama de casos de uso, o procesosdel diagrama de flujo de datos. Cada objetivo puede crear uno o más requerimientos de usuario o varios objetivospueden crear uno o tal vez ningún caso de uso (no es común crear casos de uso para informes simples), o cadarequerimiento puede crear un proceso de diagrama de flujo de datos. Los requerimientos de los usuarios para elServicio de banquetes de Catherine son:1. Crear un sitio Web dinámico para permitir que los clientes actuales y potenciales obtengan información yprecios de los servicios y productos ofrecidos.2. Permitir que los clientes actuales y potenciales envíen una solicitud con sus elecciones de servicio debanquete, y que la solicitud se canalice a un gerente de cuentas.3. Agregar clientes a la base de datos de clientes, asignarles un ID de usuario y una contraseña para que tenganacceso a sus proyectos.4. Crear un sitio Web para que los clientes puedan ver y actualizar el número de invitados para un evento, y restringirlos cambios al número de invitados cuando falten menos de cinco días para que se lleve a cabo el evento.5. Obtener o crear software para comunicarse directamente con el personal de las instalaciones de los eventos.6. Crear o comprar un sistema de recursos humanos para programar los horarios de los empleados de medio tiempo,de manera que la administración pueda agregar empleados y programarlos mediante el uso de varias restricciones.7. Proveer consultas o informes con información sintetizada.Cada requerimiento se puede utilizar para crear un plan de prueba preliminar. Como al inicio hay pocos de-talles disponibles, el plan de prueba se revisará a medida que avance el proyecto.El siguiente podría ser un plan de prueba simple para el Servicio de banquetes de Catherine:1. Diseñar datos de prueba que permitan a los clientes ver cada uno de los distintos tipos de productos.2. Probar que efectivamente se haya introducido una solicitud de servicio de banquete con datos válidos, asícomo cada una de las posibles condiciones de datos inválidos (definiremos los datos más adelante).Asegúrese de que la solicitud se canalice al gerente de cuentas apropiado.3. Probar que todos los campos de datos pasen todos los criterios de validación para cada campo. Probar datosreales para asegurar que se agreguen los clientes a la base de datos de clientes y que se les asigne un ID deusuario y una contraseña correctamente.4. Crear un plan de prueba para verificar que los clientes puedan ver la información de los eventos. Probar queno se puedan realizar actualizaciones cuando falten 5 días o menos para el evento. Diseñar datos de pruebaque permitan verificar que se actualice en forma correcta el número de invitados para un evento.5. Probar que el software funcione correctamente para comunicarse en forma directa con el personal de lasinstalaciones de los eventos.6. Probar el sistema de recursos humanos para programar los horarios de los empleados de medio tiempo yverificar que éstos se agreguen correctamente, además de verificar que se detecten y reporten todos losvalores inválidos para cada campo. Verificar que el software de programación de horarios realiceactualizaciones válidas y detectar las entradas inválidas.7. Verificar que todas las consultas o informes funcionen correctamente y contengan la información deresumen correcta.Selección de proyectosLos proyectos tienes orígenes distintos y se inician por muchas razones. No todos se deben seleccionar paracontinuar su estudio. Como analista, usted debe tener razones muy claras para recomendar un estudio de siste-mas en un proyecto que parezca resolver un problema o que pudiera dar lugar a una mejora. Tome en cuenta lamotivación detrás de una propuesta para el proyecto. Necesita estar seguro de que el proyecto en consideraciónno se proponga sólo por mejorar su propia reputación o su poder ni el de la persona o grupo que lo propone, yaque hay una buena probabilidad de que dicho proyecto sea mal concebido y que en un momento dado no seamuy bien aceptado.Como vimos en el capítulo 2, hay que examinar los proyectos que se tengan como prospectos desde unaperspectiva de sistemas, de tal forma que consideremos el impacto del cambio propuesto en toda la organización.Recuerde que los diversos subsistemas de la organización están interrelacionados y son interdependientes, por loque un cambio en un subsistema podría afectar a los demás. Incluso cuando los encargados de tomar las decisio-nes que están directamente involucrados son los que en última instancia establecen los límites para el proyectode sistemas, no podemos contemplar o seleccionar un proyecto de sistemas aislados del resto de la organización.Además de estas consideraciones generales tenemos cinco criterios específicos para la selección de proyectos:1. Contar con el respaldo de la administración.2. Que sea el momento oportuno para comprometerse con el proyecto.www.xlibros.com
62 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMAS3. La posibilidad de mejorar la obtención de los objetivos de la organización.4. Que sea práctico en términos de recursos para el analista de sistemas y la organización.5. Que el proyecto valga la pena en comparación con las demás formas en que la organización podría invertirsus recursos.Antes que nada está el respaldo de la administración. No se puede lograr nada en absoluto sin el patrociniode las personas que en un momento dado tendrán que pagar la cuenta. Esto no significa que usted no tenga in-fluencia para dirigir el proyecto o que no se puedan incluir otras personas aparte de la administración, pero sí quesu respaldo es esencial.Otro criterio importante para la selección de un proyecto es que suceda en el momento oportuno para ustedy la organización. Pregúntese a sí mismo y a los demás involucrados si la empresa es capaz en esos momentos decomprometerse con el tiempo requerido para la instalación de nuevos sistemas o para mejorar los sistemas exis-tentes. Usted también debe ser capaz de comprometer todo su tiempo (o la parte necesaria del mismo) duranteeste periodo.Un tercer criterio es la posibilidad de mejorar el logro de los objetivos de la organización como 1) mejo-rar las ganancias de la empresa, 2) brindar soporte a la estrategia competitiva de la organización, 3) mejorar lacooperación con los distribuidores y socios, 4) mejorar el soporte a las operaciones internas de manera que losproductos y servicios se produzcan con eficiencia y efectividad, 5) mejorar el soporte a las decisiones internas demanera que éstas sean más efectivas, 6) mejorar el servicio al cliente y 7) aumentar la moral de los empleados. Elproyecto debe encaminar a la organización hacia sus objetivos primordiales y no desviarla de ellos.El cuarto criterio es seleccionar un proyecto que sea práctico en términos de sus recursos y capacidades, asícomo las de la empresa. Algunos proyectos no estarán dentro de su área de experiencia, por lo cual debe ser ca-paz de reconocerlos.Por último, necesita llegar a un acuerdo básico con la organización en cuanto a si vale la pena el proyectode sistemas en comparación con cualquier otro posible proyecto que se esté considerando. Hay muchas posibi-lidades para realizar mejoras como 1) agilizar un proceso, 2) optimizar un proceso por medio de la eliminaciónde pasos innecesarios o duplicados, 3) combinar procesos, 4) reducir errores en la entrada por medio de cambiosen los formularios y las pantallas de visualización, 5) reducir el almacenamiento redundante, 6) reducir la salidaredundante y 7) mejorar la integración de los sistemas y subsistemas. Recuerde que cuando una empresa se com-promete con un proyecto, está comprometiendo los recursos que podrían ya no estar disponibles para otros. Esconveniente considerar que todos los posibles proyectos compiten por los recursos de tiempo, dinero y personalde la empresa.DETERMINACIÓN DE LA VIABILIDADUna vez que reducimos el número de proyectos de acuerdo con los criterios antes descritos, todavía falta deter-minar si los proyectos seleccionados son viables. Nuestra definición de viabilidad va mucho más allá del usocomún del término, ya que existen tres formas principales para evaluar la viabilidad de los proyectos de sistemas:en base a su operación, a su capacidad técnica y a su economía. El estudio de viabilidad no es un estudio deta-llado de sistemas, sino que se utiliza para recopilar datos más generales para los miembros de la administración,lo cual a su vez les permite tomar una decisión en cuanto a si deben continuar o no con un estudio de sistemas.Los datos para el estudio de viabilidad se pueden recuperar a través de entrevistas, las cuales veremos condetalle en el capítulo 4. El tipo de entrevista requerida está relacionado de manera directa con el problema uoportunidad que se sugiere. Por lo general, el analista de sistemas entrevista a las personas que piden ayuda ya las que están relacionadas en forma directa con el proceso de toma de decisiones, que generalmente son losadministradores. Aunque es importante abordar el problema correcto, el analista de sistemas no debe invertirmucho tiempo en realizar estudios de viabilidad, ya que se solicitarán muchos proyectos y se podrán o deberánllevar a cabo sólo unos cuantos. El estudio de viabilidad debe tardar el menor tiempo posible, procurando abarcarvarias actividades en un periodo de tiempo corto.Determinar si es posible o noUna vez que el analista determina objetivos razonables para un proyecto, necesita determinar si es posible quela organización y sus miembros puedan ver el proyecto hasta su terminación. Por lo general, el proceso de eva-luación de la viabilidad es efectivo para descartar proyectos inconsistentes con los objetivos de la empresa, querequieran una capacidad técnica imposible o que no tengan ningún mérito económico.Aunque es meticuloso, el estudio de la viabilidad es algo que vale la pena ya que ahorra tiempo y dinero alas empresas y a los analistas de sistemas. Para que el analista pueda recomendar que se continúe con el desarro-llo de un proyecto, éste debe mostrar que es viable en las tres siguientes formas: técnica, económica y operacio-nal, como se muestra en la figura 3.3.www.xlibros.com
CAPÍTULO 3 • ADMINISTRACIÓN DE PROYECTOS 63VIABILIDAD TÉCNICA El analista debe averiguar si es posible desarrollar el nuevo sistema teniendo en cuenta losrecursos técnicos actuales. De no ser así, ¿se puede actualizar o complementar el sistema de tal forma que puedacumplir con lo que se requiere? Si no es posible complementar o actualizar los sistemas existentes, la siguientepregunta es si existe o no la tecnología que cumpla con las especificaciones.Al mismo tiempo, el analista puede preguntar si la organización cuenta con el personal que tenga la habili-dad técnica suficiente para lograr los objetivos. De no ser así, la pregunta es si pueden o no contratar programa-dores, probadores, expertos o demás personal adicional que pueda tener habilidades de programación distintas alas del personal existente, o si tal vez pueden subcontratar un tercero para que se haga cargo del proyecto. Otrade las preguntas es si hay o no paquetes de software disponibles que puedan lograr sus objetivos, o si hay quepersonalizar el software para la organización.VIABILIDAD ECONÓMICA La viabilidad económica es la segunda parte de la determinación de recursos. Losrecursos básicos a considerar son el tiempo de usted como analista y el tiempo de su equipo de análisis desistemas, el costo de realizar un estudio de sistemas completo (incluyendo el tiempo de los empleados con losque usted va a trabajar), el costo del tiempo del empleado de la empresa, el costo estimado del hardware y elcosto estimado del software o del desarrollo de software.La empresa afectada debe ser capaz de ver el valor de la inversión que está considerando antes de compro-meterse con un estudio de sistemas completo. Si los costos a corto plazo no se ven eclipsados por las ganancias alargo plazo o no producen una reducción inmediata en los costos de operación, entonces el sistema no es econó-micamente viable y el proyecto no debe continuar.VIABILIDAD OPERACIONAL Suponga por un instante que tanto los recursos técnicos como económicos seconsideran adecuados. El analista de sistemas debe aún considerar la viabilidad operacional del proyectosolicitado. La viabilidad operacional depende de los recursos humanos disponibles para el proyecto e implica laacción de pronosticar si el sistema funcionará y se utilizará una vez instalado.Si los usuarios están prácticamente casados con el sistema actual, no ven problemas con él y por lo generalno están involucrados en el proceso de solicitar un nuevo sistema, habrá mucha resistencia a la implementacióndel nuevo. Las probabilidades de que se vuelva funcional en algún momento dado serán bajas.Por otro lado, si los mismos usuarios han expresado la necesidad de un sistema que sea funcional por mástiempo, de una forma más eficiente y accesible, hay más probabilidades de que el sistema solicitado se llegue autilizar en un momento dado. Gran parte del arte de determinar la viabilidad operacional recae en las interfacesde usuario elegidas, como veremos en el capítulo 14.DETERMINACIÓN DE LAS NECESIDADES DE HARDWARE Y SOFTWAREPara evaluar la viabilidad técnica hay que evaluar la habilidad del hardware y software computacional paramanejar las cargas de trabajo en forma adecuada. En la figura 3.4 se muestran los pasos que sigue el analista desistemas para determinar las necesidades de hardware y software. En primer lugar, hay que realizar un inventariode todo el hardware computacional con el que cuente la organización para descubrir qué hay disponible y qué sepuede utilizar.El analista de sistemas necesita trabajar con los usuarios para determinar qué hardware se necesitará. Paradeterminar el hardware necesario hay que determinar los requerimientos de información de los humanos. Tam-bién puede ser útil conocer la estructura organizacional (como vimos en el capítulo 2) y la forma en que losLos tres elementos clave de la viabilidadViabilidad técnicaComplemento para el sistema actualTecnología disponible para satisfacer las necesidades de los usuariosViabilidad económicaTiempo del analista de sistemasCosto del estudio de sistemasCosto del tiempo de los empleados para el estudioCosto estimado del hardwareCosto del software empaquetado o del desarrollo de softwareViabilidad operacionalSi el sistema funcionará o no cuando se instaleSi el sistema se utilizará o noFIGURA 3.3Los tres elementos clave de laviabilidad: técnica, económica yoperacional.www.xlibros.com
64 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASusuarios interactúan con las tecnologías en el entorno organizacional al determinar el hardware necesario. Lasopciones en cuanto al hardware se pueden considerar sólo hasta que los analistas de sistemas, los usuarios yla administración tengan una buena comprensión sobre los tipos de tareas que hay que llevar a cabo.Hacer un inventario del hardware computacionalEmpiece por hacer un inventario del hardware de computadora que ya esté disponible en la organización. Enun momento dado descubrirá que algunas de las opciones de hardware implican expandir o reciclar el hardwareactual, por lo que es importante saber qué hay disponible.Si no hay un inventario de hardware actualizado disponible, el analista de sistemas necesita preparar uno rá-pidamente y llevarlo a cabo. Como analista de sistemas, usted necesita saber lo siguiente:1. El tipo de equipo: número de modelo y fabricante.2. El estado de funcionamiento del equipo: sobre pedido, en funcionamiento, almacenado o por reparar.3. La edad estimada del equipo.4. La vida proyectada del equipo.5. La ubicación física del equipo.6. El departamento o persona que se considera responsable del equipo.7. El arreglo financiero para el equipo: propio, alquilado o rentado.Al determinar el hardware actual disponible se obtendrá un proceso de toma de decisiones más sólido parael momento de realizar las decisiones sobre el hardware, ya que se eliminarán la mayor parte de las conjeturassobre lo que existe. Por medio de las entrevistas que usted haya realizado a los usuarios, los cuestionarios paraencuestarlos y la investigación de los datos de archivo, usted ya conocerá el nombre de personas disponibles para elprocesamiento de los datos, así como sus habilidades y capacidades. Use esta información para proyectar qué tanbien se pueden satisfacer las necesidades del personal en cuanto a nuevo hardware.Estimación de las cargas de trabajoEl siguiente paso para determinar las necesidades de hardware es estimar las cargas de trabajo. Para ello, losanalistas de sistemas formulan cifras que representan las cargas de trabajo actuales y pronosticadas para el sis-tema, de manera que el hardware que se obtenga posea la capacidad de manejar las cargas de trabajo actuales yfuturas.Pasos para adquirir hardwarey software computacionalEstimar lascargas de trabajoEvaluarhardwareOpcionesCompra ComprarCOTSArrendamientoRentaUsarASPCrearOpcionesEvaluarsoftwareAdquirir elequipo decómputoElegir eldistribuidorHacer inventariodel hardwarecomputacionalFIGURA 3.4Pasos en la elección de hardware ysoftware.www.xlibros.com
CAPÍTULO 3 • ADMINISTRACIÓN DE PROYECTOS 65Si las estimaciones se realizan en forma apropiada, la empresa no tendrá que reemplazar hardware sólo debidoa un crecimiento imprevisto en el uso del sistema (sin embargo, otros eventos como las innovaciones tecnológicassuperiores pueden dictar el reemplazo de hardware, si la empresa desea mantener su ventaja competitiva).Por necesidad, las cargas de trabajo se muestrean en vez de pasarlas a través de varios sistemas computacio-nales. Los lineamientos que se proporcionan en el capítulo 5 se pueden usar en este caso también, ya que en elmuestreo de cargas de trabajo, el analista de sistemas toma una muestra de las tareas necesarias y los recursoscomputacionales requeridos para completarlas.La figura 3.5 comparara los tiempos requeridos por un sistema de información existente y uno propuesto,los cuales deben manejar cierta carga de trabajo. Hay que tener en cuenta que en la actualidad la empresa utilizaun sistema computacional antiguo para preparar un resumen de los embarques a sus almacenes de distribucióny que se está sugiriendo un tablero de control basado en Web. La comparación de la carga de trabajo analizacuándo y cómo se realiza cada proceso, cuánto tiempo humano se requiere y cuánto tiempo de computadorase necesita. Hay que tener en cuenta que el sistema recién propuesto debería reducir en forma considerable eltiempo humano y de computadora requeridos.Evaluación del hardware computacionalEvaluar el hardware computacional es una responsabilidad que se comparte entre la administración, los usuariosy los analistas de sistemas. Aunque los distribuidores suministrarán los detalles sobre sus ofrecimientos específi-cos, los analistas deben supervisar el proceso de evaluación en forma personal, ya que tendrán siempre en cuentalos mejores intereses para la empresa. Además los analistas de sistemas tal vez tengan que educar a los usuariosy a la administración en cuanto a las ventajas y desventajas generales del hardware para que puedan ser capacesde evaluarlo.Con base en el inventario actual del equipo de cómputo y las estimaciones adecuadas de las cargas de tra-bajo actuales y pronosticadas, el siguiente paso en el proceso es considerar los tipos de equipos disponibles queComparar el rendimiento de losalmacenes de distribuciónmediante la ejecución delprograma para sintetizar datosSe ejecutan los programas decomputadora cuando es necesario;el procesamiento se realiza desdela estación de trabajoLas actualizaciones ocurren deinmediato; el procesamiento serealiza en líneaGerente de distribución Gerente de distribuciónA diario:Introducir los embarques en hojasde cálculo de Excel, verificar laprecisión de las hojas de datosen forma manual y despuésalmacenar los archivos en mediosde respaldoPor mes:Ejecutar un programa que sinteticelos registros diarios y e imprima uninforme, obtener el informe y hacerevaluacionesA diario:Introducir los embarques en elsistema basado en Web mediantecuadros desplegables. Los datosse respaldan en forma automáticaen la ubicación remotaPor mes:Comparar almacenes en líneamediante el tablero de controlde rendimiento; imprimir sólo sies necesarioA diario : 20 minutos A diario: 10 minutosPor mes: 30 minutosPor mes: 30 minutosPor mes: 10 minutosPor mes: 10 minutosA diario: 20 minutos A diario: 10 minutosTareaMétodoPersonalCuándo y cómoRequerimientos detiempo humanoRequerimientos detiempo decomputadoraSistema existente Sistema propuestoComparar el rendimiento de losalmacenes de distribución en eltablero de control basado en WebFIGURA 3.5Comparaciones de las cargas detrabajo entre los sistemasexistentes y los propuestos.www.xlibros.com
66 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASparezcan cumplir con las necesidades proyectadas. La información de los distribuidores sobre los posibles sis-temas y sus configuraciones se vuelve más pertinente en esta etapa, por lo cual hay que revisarla junto con laadministración y los usuarios.Además, se pueden simular y ejecutar las cargas de trabajo en distintos sistemas, incluyendo los que la orga-nización ya esté usando. Este proceso se conoce como “benchmarking”.Los criterios que deben usar los analistas de sistemas y los usuarios para evaluar el rendimiento de distintossistemas en el hardware son:1. El tiempo requerido para las transacciones promedio (incluyendo el tiempo requerido para introducir losdatos y cuánto se tarda en recibir la salida).2. La capacidad del volumen total del sistema (cuánto se puede procesar al mismo tiempo antes de que surja unproblema).3. El tiempo de inactividad de la CPU o red.4. El tamaño de memoria provisto.Algunos criterios se mostrarán en las demostraciones formales; otros no se pueden simular y hay que dedu-cirlos de las especificaciones de los fabricantes. Es importante ser claro en cuanto a las funciones requeridas ydeseadas antes de involucrarse demasiado en los alegatos de los distribuidores durante las demostraciones.Una vez que se conocen los requerimientos funcionales y se comprenden los productos actuales disponibles,además de compararlos con lo que ya existe en la organización, los analistas de sistemas toman decisiones enconjunto con los usuarios y la administración acerca de si es o no necesario obtener nuevo hardware. Podemosconsiderar que las opciones existen en un continuo: desde usar sólo equipo que ya esté disponible en la empresahasta obtener equipo totalmente nuevo. Entre estos dos extremos existen varias opciones para realizar modifica-ciones menores o mayores al sistema computacional existente.TAMAÑO Y USO DE LAS COMPUTADORAS El rápido avance de la tecnología establece que el analista de sistemasdebe investigar los tipos de computadoras disponibles en el momento específico en que se escriba la propuesta desistemas. Los tamaños de las computadoras varían en forma considerable, desde los teléfonos celulares enminiatura hasta las supercomputadoras del tamaño de un cuarto. Cada una tiene distintos atributos que debemosconsiderar a la hora de decidir cómo implementar un sistema computacional.Adquisición del equipo computacionalLas tres principales opciones para adquirir hardware computacional son comprarlo, arrendarlo o rentarlo. Hayventajas y desventajas que debemos considerar para cada una de las decisiones, como se muestra en la figura 3.6.Algunos de los factores más influyentes a considerar para decidir cuál opción es la mejor para una instalaciónen especial son: la comparación entre los costos iniciales y a largo plazo, si la empresa puede invertir o no capital enequipo de cómputo y si desea tener el control completo y la responsabilidad sobre el equipo.Ventajas Desventajas• Más económico que arrendar orentar a largo plazo• Habilidad de cambiar el sistema• Provee ventajas fiscales por ladepreciación acelerada• Control total• No hay capital invertido• No se requiere financiamiento• Es fácil cambiar de sistemas• Por lo general se incluyen elmantenimiento y el seguro• El costo inicial es alto• Riesgo de obsolescencia• Riesgo de quedar trabado sila elección fue incorrecta• Responsabilidad total• La empresa no es dueña dela computadora• El costo es muy alto debido aque el distribuidor asume elriesgo (la opción más costosa)RentarComprarArrendar • No hay capital invertido• No se requiere financiamiento• Los arrendamientos son másbajos que los pagos de renta• La empresa no es dueña delsistema cuando termina elplazo de arrendamiento• Por lo general hay una fuertemulta si se termina elarrendamiento antes de tiempo• Los arrendamientos son máscostosos que las comprasFIGURA 3.6Comparación de las ventajas ydesventajas de comprar, arrendar yrentar equipo de cómputo.www.xlibros.com
CAPÍTULO 3 • ADMINISTRACIÓN DE PROYECTOS 67Comprar implica que la empresa será dueña del equipo. Uno de los principales factores determinantes paracomprar o no es la vida proyectada del sistema. Si el sistema se va a utilizar por más de cuatro o cinco años (yse calcula que los demás factores se mantendrán constantes), la decisión por lo general será comprar. Observe enel ejemplo de la figura 3.7 que el costo de comprar después de tres años es menor que el de arrendar o rentar.A medida que los sistemas se hacen más pequeños y potentes, y menos costosos, y a medida que los sistemasdistribuidos se hacen más populares, cada vez más empresas deciden comprar equipo.Arrendar el hardware de computadora en vez de comprarlo es otra de las posibilidades. Arrendar equipo aldistribuidor o a una empresa de arrendamiento de terceros es más práctico cuando la vida proyectada del sistemaes menor a cuatro años. Además, si se pronostican cambios considerables en la tecnología, arrendar es mejoropción, ya que también permite a la empresa invertir su dinero en otro lado, donde pueda trabajar para ésta envez de estar invertido en equipos de capital. Sin embargo, durante un periodo extenso el arrendamiento no es unamanera económica de adquirir equipo de cómputo.Rentar hardware de computadora es la tercera opción principal para adquirir computadoras. Una de lasprincipales ventajas de rentar es que no se tiene que invertir el capital de la empresa y, por ende, no se requierefinanciamiento. Además, al rentar el hardware computacional es más fácil cambiar el hardware del sistema. Porúltimo, es común que se incluyan el mantenimiento y el seguro en los contratos de renta. No obstante, debido alos altos costos involucrados y al hecho de que la empresa no será dueña del equipo rentado, esta opción se debecontemplar sólo como un movimiento a corto plazo para manejar las necesidades no recurrentes o limitadas decomputadoras, o en tiempos en los que la tecnología sea muy cambiante.EVALUACIÓN DEL SOPORTE DE LOS DISTRIBUIDORES EN RELACIÓN CON EL HARDWARE DE COMPUTADORA Hayque evaluar varias áreas clave al ponderar los servicios de soporte disponibles para las empresas por parte de losdistribuidores. La mayoría de los distribuidores ofrecen la prueba del hardware al momento de la entrega y unagarantía de 90 días que cubre cualquier defecto de fábrica, pero hay que averiguar qué más ofrece el distribuidor.Con frecuencia, lo que distingue a los distribuidores de calidad es la amplia variedad de servicios de soporte queofrecen.En la figura 3.8 se muestra una lista de los criterios clave que conviene verificar al evaluar el soporte de losdistribuidores. La mayoría de los servicios adicionales de soporte de los distribuidores que se muestran en esalista se negocian por separado de los contratos de arrendamiento o compra de hardware.Los servicios de soporte incluyen el mantenimiento de rutina y preventivo del hardware, el tiempo de res-puesta especificado (en menos de seis horas o al siguiente día hábil, por ejemplo) en caso de descomposturas delequipo, el préstamo de equipo en caso de que haya que reemplazar el hardware de manera permanente o si serequiere una reparación fuera del sitio, y la capacitación en el lugar de trabajo o seminarios de grupo fuera dellugar de trabajo para los usuarios. Examine con detenimiento la descripción de servicios de soporte incluidas enla compra o el arrendamiento del equipo, y recuerde involucrar al personal legal apropiado antes de firmar con-tratos de equipos o servicios.Desafortunadamente, evaluar el hardware de computadora no es tan simple como el hecho de compararcostos y elegir la opción menos costosa. Algunas otras eventualidades que surgen comúnmente por parte de losArrendamiento mensual× 36 mesesSubtotalPago inicial$ 1505,400500Arrendamiento$5,900Costo total por 3 añosPrecio de compraValor residual$6,000– 500Compra$5,500Costo total por 3 añosRenta mensual× 36 mesesCosto total por 3 años$ 170$6,120RentaFIGURA 3.7Comparación de las alternativaspara la adquisición decomputadoras.www.xlibros.com
68 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASusuarios y la administración incluye: 1) la posibilidad de agregar componentes al sistema si se requiere mástarde, 2) la posibilidad de conectarse con equipo de otros distribuidores si el sistema necesita crecer, (3) los bene-ficios de comprar más memoria según se requiera y (4) la estabilidad corporativa del distribuidor.La competencia entre distribuidores ha originado la idea de producir hardware compatible con el de loscompetidores para mejorar las probabilidades de supervivencia del distribuidor. Sin embargo, antes de quedarconvencido de que comprar compatibles más económicos es la forma de dotar a su sistema con capacidad mejo-rada, investigue lo suficiente como para sentirse confiado de que el distribuidor original sea una entidad corpo-rativa estable.Evaluación de softwareLos analistas y las organizaciones se enfrentan cada vez más con la decisión de crear, comprar o subcontratar alevaluar software para los proyectos de sistemas de información, en especial cuando se contemplan actualizacio-nes a sistemas existentes o antiguo.Ya vimos las decisiones que toman los analistas entre rentar, comprar o arrendar hardware. Parte del procesode toma de decisiones relacionado con la compra de software comercial para venta en los canales convencionales(COTS), la “renta” del software a un proveedor de servicios de aplicación (ASP) o la creación de software perso-nalizado para el proyecto es análogo al proceso de decisión sobre el hardware.Hay que recalcar que sin importar que usted desarrolle el software o compre un producto COTS para un pro-yecto en especial, es imperativo completar primero un análisis de los requerimientos de información de los usua-rios y los sistemas que utilizan (como vimos en los capítulos anteriores). Como analista, parte de la experienciaque usted desarrolle consiste en formular juicios sólidos al decidir entre el desarrollo de software y comprar soft-ware COTS para sistemas nuevos y existentes. En las siguientes secciones veremos cuándo es conveniente crearsu propio software, cuándo hay que comprar paquetes COTS y cuándo es mejor usar un ASP. En la figura 3.9 sesintetizan las ventajas y desventajas de cada una de estas opciones.CUÁNDO DEBEMOS CREAR SOFTWARE PERSONALIZADO Varias situaciones demandan la creación de softwareoriginal o de ciertos componentes de software. El caso más probable es cuando no existe software COTS o no sepuede identificar para la aplicación deseada. La alternativa es que el software tal vez exista, pero sea demasiadocostoso o no se pueda comprar o adquirir licencias con facilidad.Hay que crear software original cuando la organización trata de obtener una ventaja competitiva por mediodel aprovechamiento de los sistemas de información. Éste es comúnmente el caso cuando una organización creaaplicaciones de comercio electrónico u otras aplicaciones innovadoras sin que existiera algo así antes. Tambiénes posible que la organización sea de las “primeras” en utilizar una tecnología específica o de su industria especí-fica. Las organizaciones que tienen requerimientos muy especializados o que existen en industrias especializadastambién se pueden beneficiar del software original.Las ventajas de crear su propio software incluyen ser capaz de responder a las necesidades especializadas deusuarios y empresas, obtener una ventaja competitiva al crear software innovador, tener personal interno disponi-ble para dar mantenimiento al software y el orgullo de poseer algo que usted ha creado.Las desventajas de desarrollar su propio software incluyen el potencial de un costo inicial considerablementealto en comparación con la compra de software COTS o la subcontratación de un ASP, la necesidad de contratarLínea completa de hardwareProductos de calidadGarantíaNecesidades completas de softwareProgramación personalizadaGarantíaCompromiso con los itinerariosCapacitación en la empresaAsistencia técnicaProcedimientos de mantenimiento de rutinaTiempo de respuesta especificado para las emergenciasPréstamo de equipo mientras se realiza la reparaciónDetalles específicos que losdistribuidores ofrecen comúnmenteSoporte de hardwareSoporte de softwareInstalación y capacitaciónMantenimientoServicios del distribuidorFIGURA 3.8Lineamientos para seleccionardistribuidores.www.xlibros.com
CAPÍTULO 3 • ADMINISTRACIÓN DE PROYECTOS 69o trabajar con un equipo de desarrollo y el hecho de que usted sea responsable del mantenimiento continuo porser el creador del software.CUÁNDO DEBEMOS COMPRAR SOFTWARE COTS El software comercial de venta en los canales convencionalesincluye productos como la suite de Microsoft Office, que a su vez incluye el programa Word para elprocesamiento de palabras, Excel para las hojas de cálculo, Access para crear bases de datos y otras aplicaciones.Hay otros tipos de software COTS disponibles para sistemas a nivel organizacional en vez de uso personal o deoficina. Algunos autores incluyen paquetes ERP populares (pero costosos) como Oracle y SAP en sus ejemplosde software COTS. Estos paquetes tienen diferencias radicales en cuanto al grado de personalización, soporte ymantenimiento requerido en comparación con Microsoft Office. El software COTS también se puede referir a loscomponentes u objetos de software (también conocidos como bloques de construcción) que se pueden comprarpara proveer cierta funcionalidad necesaria en un sistema.Considere el uso de software COTS cuando pueda integrar con facilidad las aplicaciones o paquetes a lossistemas existentes o planeados, y cuando no haya identificado ninguna necesidad inmediata o continua de mo-dificarlos o personalizarlos para los usuarios. Sus pronósticos deben demostrar que la organización para la cualestá diseñando el sistema muestra pocas probabilidades de pasar por cambios importantes después de la comprapropuesta de software COTS como un aumento considerable en los clientes o grandes expansiones físicas.Hay algunas ventajas de comprar software COTS que usted debe tener en cuenta al momento de ponderarlas alternativas. Una de ellas es que estos productos se han refinado a través del proceso del uso y la distribucióncomercial, por lo que a menudo se ofrecen funcionalidades adicionales. Otra ventaja es que por lo general, elsoftware empaquetado se prueba en forma exhaustiva y, por ende, es en extremo confiable.A menudo el software COTS ofrece una funcionalidad mejorada, ya que es probable que un producto comer-cial cuente con productos afiliados, características complementarias y actualizaciones que mejoren su atractivo.Además, los analistas descubren con frecuencia que el costo inicial del software COTS es menor que el costo dedesarrollar software dentro de la empresa o usar un ASP.Otra ventaja de comprar paquetes COTS es que muchas otras compañías también lo usan, por lo que los analis-tas no tienen que experimentar con sus clientes a través de aplicaciones de software únicas. Por último, el softwareVentajas Desventajas• Respuesta específica a lasnecesidades especializadas dela empresa• La innovación puede dar a laempresa una ventaja competitiva• Personal interno disponible paradar mantenimiento al software• Orgullo de propiedad• Puede tener un costo inicialconsiderablemente alto encomparación con el softwareCOTS o un ASP• Es necesario contratar o trabajarcon un equipo de desarrollo• Mantenimiento continuoCreación de softwarepersonalizado• Las organizaciones que no seespecializan en sistemas deinformación se pueden enfocaren lo que hacen mejor (su misiónestratégica)• No hay necesidad de contratar,capacitar o retener una grancantidad de personal de TI• No se gasta el tiempo de losempleados en tareas de TI noesenciales• Pérdida de control de los datos,sistemas, empleados de TI yhorarios de trabajo• Preocupación sobre la viabilidadfinanciera y estabilidad a largoplazo del ASP• Cuestiones de seguridad,confidencialidad y privacidad• Pérdida de ventaja corporativaestratégica potencial en relacióncon la capacidad de innovaciónde las aplicacionesUsar un ASP• Refinado en el mundo comercial• Mayor confiabilidad• Mayor funcionalidad• Por lo general tiene un menorcosto inicial• Ya lo utilizan otras empresas• La ayuda y capacitación seincluyen con el software• Enfocado en la programación,no en la empresa• Hay que acoplarse a lascaracterísticas existentes• Personalización limitada• Futuro financiero incierto deldistribuidor• Menor propiedad y compromisoComprar paquetesCOTSFIGURA 3.9Comparación de las ventajas ydesventajas de crear softwarepersonalizado, comprar paquetesCOTS y subcontratar un ASP.www.xlibros.com
70 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASCOTS cuenta con una ventaja en cuanto a la ayuda y la capacitación que se incluyen en la compra del softwareempaquetado.Como ejemplo del uso de software COTS, analicemos el caso de una compañía teatral, una organización sinfines de lucro (generalmente, este tipo de asociaciones en especial las de artes escénicas tienden a atrasarse encomparación con sus contrapartes con fines comerciales al adoptar tecnologías de comunicación de la informa-ción (ICT)). Como es de esperarse, la compañía teatral se tardó en adoptar la Web. Cuando deseaban crear apli-caciones de comercio electrónico, se vieron en la necesidad de contratar diseñadores externos para ello. En vistade los gastos y la falta de experiencia interna, muchas organizaciones sin fines de lucro simplemente no pasaronla parte comercial de sus organizaciones a la Web, y se quedaron en espera de paquetes de COTS como el soft-ware de taquilla basado en PC, o ASP como las agencias de venta de boletos en línea que ya contaban con la au-tomatización requerida, para poner estos servicios a disposición de los clientes. El desarrollo de software internoestaba fuera de consideración para la mayoría de estos grupos, que por lo general tienen poco o nada de personalde TI y un presupuesto reducido o inexistente, además de una mínima experiencia de TI interna.Hay una desventaja en el uso de software COTS. Como no está diseñado para ser totalmente personalizado,la compañía teatral no pudo incluir características clave en su base de datos de donadores con las que los usua-rios contaban. Además, el software COTS también puede incluir errores que podrían exponer a la organización aproblemas legales relacionados con fallas en el servicio.Hay que considerar otras desventajas en cuanto a la compra del software COTS, incluyendo el hecho deque los paquetes están enfocados en la programación y no en los usuarios humanos que trabajan en una em-presa. Además los usuarios deben acoplarse a las características existentes en el software, sin importar que seanapropiadas o no. Una desventaja que surge de esto es la capacidad limitada de personalización de la mayoría delsoftware empaquetado. Otras desventajas incluyen la necesidad de investigar la estabilidad financiera del distri-buidor del software y la sensación reducida de propiedad y compromiso que es inevitable cuando el software seconsidera un producto y no un proceso.Para obtener cierta perspectiva sobre los sistemas que se van a desarrollar, usted debe reconocer que másde la mitad de los proyectos se construyen desde cero (en donde dos terceras partes utilizan métodos tradiciona-les como SDLC y los prototipos, y una tercera parte utiliza tecnologías ágiles u orientadas a objetos). La mayorparte de ellos se desarrollan mediante el uso de un equipo interno de análisis de sistemas. Los programadorespueden ser internos o subcontratados.Menos de la mitad de los proyectos se desarrollan a partir de aplicaciones o componentes ya existentes. Lagran mayoría se modifican, algunos en forma extensa. Menos del 5 por ciento del software es comercial que sevende por canales convencionales y no requiere ningún tipo de modificación.O P O R T U N I D A D D E C O N S U L T O R Í A 3 . 2Veni, Vidi, Vendi (Vine, vi y vendí)“ Es toda una elección. Es decir, ningún paquete individual pa-rece tener todo lo que queremos, aunque algunos de ellos se acercanmucho”, dice Roman, un ejecutivo de publicidad para Empire Ma-gazine con quien usted ha estado trabajando en un proyecto de sis-temas. Recientemente, ambos decidieron que el software empa-quetado podría adaptarse a las necesidades del departamento depublicidad y demoraría su declive general.“La demostración de la última persona que vimos, el que tra-bajaba para Data Coliseum, realmente era muy interesante. Y megusta su folleto. Impresión a todo color, en cartulina. Clásico.”,afirmó Roman.“¿Y qué hay sobre las personas de Vesta Systems? Son en verdaddinámicos. Y su paquete es fácil de usar, sin complicaciones. Ademásdijeron que capacitarían a todos los 12 , en el sitio de trabajo y sin costo.Pero echa un vistazo a su publicidad: la imprimen en su oficina”.Roman juguetea con su silla al tiempo que continúa su reseñaad hoc del software y de los distribuidores del mismo. “Ese paquetede Mars, Inc., realmente me convenció por sí solo. Es decir, teníaun calendario integrado. Y me gusta la forma en que se podían elegirtodos los menús de las pantallas con base en números romanos.Fácil. Y el distribuidor parece dispuesto a hacer una rebaja. Creoque están en medio de una guerra de precios”.“Pero ¿quieres saber cuál es mi favorito?”, pregunta Romancon astucia. “El de Jupiter, Unlimited. Es decir, tiene todo, ¿verdad?Cuesta un poco más pero hace lo que se necesita y la documenta-ción es fabulosa. Desde luego que no ofrecen capacitación. Creenque no se requiere”.Usted ya está a punto de responderle a Roman que para presen-tarle su decisión antes de la fecha límite del 15 de marzo, necesitaráevaluar tanto al software como a los distribuidores en forma siste-mática. Evalúe a cada uno de los distribuidores y los paquetes conbase en lo que Roman ha dicho hasta ahora (suponga que puedeconfiar en sus opiniones). ¿Cuáles son las predisposiciones de Ro-man al evaluar software y los distribuidores? ¿Qué informaciónadicional necesita sobre cada empresa y su software antes de tomaruna decisión? Cree una tabla para evaluar a cada distribuidor. Res-ponda a cada una de las preguntas en un párrafo separado.www.xlibros.com
CAPÍTULO 3 • ADMINISTRACIÓN DE PROYECTOS 71CUÁNDO DEBEMOS SUBCONTRATAR SERVICIOS DE SOFTWARE DE UN PROVEEDOR DE SERVICIOS DE APLICACIÓN Lasorganizaciones pueden obtener ciertos beneficios al adoptar un enfoque completamente distinto para la obtenciónde software. Esta tercera opción es la de subcontratar un proveedor de servicios de aplicación especializado enaplicaciones de TI para que se encargue de algunas de las necesidades de software de la organización.Hay beneficios específicos al subcontratar un proveedor de servicios de aplicación (ASP) para que se en-cargue del desarrollo de las aplicaciones de la empresa. Por ejemplo, a las organizaciones que deseen retener suenfoque estratégico y dedicarse a lo que saben hacer mejor, tal vez les convenga subcontratar un tercero paraproducir aplicaciones de sistemas de información. Además, hacerlo implica que no hay que contratar, capacitary retener gran cantidad de personal de TI. Esto puede producir ahorros considerables. Cuando una organizaciónutiliza un ASP, se invierte una cantidad muy pequeña o nula del valioso tiempo de los empleados en las tareas deTI no esenciales (ya que el ASP se encarga de ellas).No hay que considerar la contratación de un ASP como una fórmula mágica para lidiar con los requerimien-tos de software; hay desventajas que debemos considerar seriamente. Una de ellas es la pérdida general de controlsobre los datos corporativos, sistemas de información, empleados de TI e incluso el procesamiento y la programa-ción de tiempos para el proyecto. Algunas empresas tienen la creencia de que su información es la parte central desu negocio, por lo que tan sólo pensar en renunciar al control sobre ella es angustiante. Otra desventaja es la cues-tión sobre la viabilidad financiera del ASP que se elija. También podrían existir cuestiones sobre la seguridad delos datos y registros de la organización, además de la confidencialidad de los datos y la privacidad de los clientes.Por último, al elegir un ASP se puede llegar a perder la ventaja corporativa estratégica que la organización pudohaber obtenido al implementar por cuenta propia las aplicaciones innovadoras creadas por sus empleados.EVALUACIÓN DEL SOPORTE DE LOS DISTRIBUIDORES EN RELACIÓN CON EL SOFTWARE Y LOS ASPS Ya sea quecompre un paquete COTS o contrate los servicios de ASP, de todas formas tendrá que lidiar con distribuidoresque antepongan sus propios intereses. Por tal motivo, usted debe estar dispuesto a evaluar el software con losusuarios y evitar dejarse influenciar por los argumentos de venta de los distribuidores. En resumen, hay seiscategorías principales en las que se puede calificar el software, como se muestra en la figura 3.10: efectividad enel rendimiento, eficiencia del rendimiento, facilidad de uso, flexibilidad, calidad de la documentación y soportedel fabricante.Poder realizar todas las tareas requeridasPoder realizar todas las tareas deseadasPantallas de visualización bien diseñadasCapacidad adecuadaTiempo de respuesta rápidoEntrada eficienteSalida eficienteAlmacenamiento de datos eficienteRespaldo eficienteInterfaz de usuario satisfactoriaMenús de ayuda disponiblesArchivos “Léame” para los cambios de último minutoInterfaz flexibleRetroalimentación adecuadaBuena capacidad para recuperarse de los erroresOpciones para la entradaOpciones para la salidaSe puede usar con otro softwareBuena organizaciónTutorial en línea adecuadoSitio Web con sección de preguntas frecuentes (FAQ)Línea directa de soporte técnicoBoletín de noticias/correo electrónicoSitio Web en donde se pueden descargar lasactualizaciones del productoRequerimientos de software Características específicas del softwareEficiencia del rendimientoEfectividad en el rendimientoFacilidad de usoFlexibilidadCalidad de la documentaciónSoporte del fabricanteFIGURA 3.10Lineamientos para la evaluacióndel software.www.xlibros.com
72 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASEvalúe el software usando datos de prueba de la empresa que lo está considerando y examine la documen-tación que lo acompaña. No basta confiar sólo en las descripciones de los distribuidores. Por lo general, éstoscertifican que el software es funcional al momento en que sale de su establecimiento, pero no garantizarán queesté libre de errores en cualquier situación o que no fallará cuando los usuarios realicen acciones incorrectas.También es obvio que no garantizarán su software si se utiliza en conjunto con hardware defectuoso.IDENTIFICACIÓN, PRONÓSTICO Y COMPARACIÓNDE LOS COSTOS Y BENEFICIOSSiempre hay que considerar los costos y beneficios del sistema computacional propuesto en conjunto, ya que es-tán interrelacionados y a menudo son interdependientes. Aunque el analista de sistemas está tratando de proponerun sistema que cumpla con varios requerimientos de información, las decisiones de continuar con el sistema pro-puesto se basarán en un análisis de costos-beneficios y no en los requerimientos de información. Muchas veceslos beneficios se miden con base en los costos, como veremos en la siguiente sección.PronósticosLos analistas de sistemas deben ser capaces de predecir ciertas variables clave antes de enviar su propuesta alcliente. En cierto grado, un analista de sistemas tiene que depender de un análisis del tipo “qué pasaría si”. Porejemplo: “¿Qué pasaría si los costos de mano de obra aumentan sólo un 5 por ciento al año durante los próximostres años, en lugar de aumentar un 10 por ciento?”. Sin embargo, el analista de sistemas debe tener en cuenta queno puede depender totalmente de estos análisis si quiere que su propuesta sea creíble, significativa y valiosa.El analista de sistemas tiene a su disposición muchos modelos de pronósticos. La principal condición paraelegir un modelo es la disponibilidad de datos históricos. Si no hay datos disponibles, el analista debe recurrir auno de los siguientes métodos de juicio: estimaciones de la fuerza de ventas, encuestas para estimar la demandade los clientes, estudios Delphi (un pronóstico por consenso que un grupo de expertos desarrolla de manera inde-pendiente a través de una serie de rondas), crear escenarios o bosquejar analogías históricas.Si hay datos históricos disponibles, la siguiente diferenciación entre las clases de técnicas implica diferen-ciar entre un pronóstico condicional o uno incondicional. En un pronóstico condicional hay una asociación entrelas variables en el modelo o de tal forma que exista una relación causal. Los métodos comunes en este grupo in-cluyen: correlación, regresión, indicadores importantes, econometría y modelos de entrada/salida.En el pronóstico incondicional el analista no tiene que buscar o identificar relaciones causales. En conse-cuencia, los analistas de sistemas opinan que estos métodos son alternativas de bajo costo, fáciles de implemen-tar. En este grupo se incluyen: el juicio gráfico, las medias móviles y el análisis de los datos en series de tiempo.Como estos métodos son simples, confiables y efectivos en costo, en el resto de esta sección nos concentraremosen ellos.ESTIMACIÓN DE LAS TENDENCIAS Podemos estimar las tendencias de varias maneras. Una de ellas es medianteel uso de una media móvil. Este método es útil debido a que es posible ajustar la consistencia de ciertos patronesestacionales, cíclicos o aleatorios de forma que quede el patrón de tendencias. El principio detrás de las mediasmóviles es calcular la media aritmética de los datos a partir de un número fijo de periodos; una media móvil detres meses es simplemente la media de los últimos tres meses. Por ejemplo, el promedio de las ventas para enero,febrero y marzo se utiliza para predecir las de abril. Después se utilizan las ventas promedio de febrero, marzo yabril para predecir las de mayo, y así sucesivamente.Al momento de graficar los resultados podemos ver con facilidad que los datos con amplias fluctuaciones sevuelven consistentes. El método de la media móvil es útil debido a su habilidad de uniformar los datos, pero almismo tiempo presenta muchas desventajas. Las medias móviles se ven afectadas más fuertemente debido a losvalores extremos que cuando se utiliza el método del juicio gráfico o cuando se realizan estimaciones medianteotros métodos, como el de los mínimos cuadrados. El analista debe aprender a pronosticar con destreza, ya que amenudo se obtiene información valiosa que puede incluso justificar todo el proyecto completo.Identificación de los beneficios y costosPodemos considerar los beneficios y costos como tangibles e intangibles. Al considerar los sistemas debemostener en cuenta ambos tipos de beneficios.BENEFICIOS TANGIBLES Los beneficios tangibles son las ventajas que se pueden medir en dinero y se acumulanen la organización a través del uso del sistema de información. Algunos ejemplos de beneficios tangibles sonaumento en la velocidad de procesamiento, acceso a información que se consideraba inaccesible por cualquierotro método, acceso a la información de manera más oportuna, la ventaja que ofrece el poder de cálculo superiorde la computadora y la reducción en la cantidad de tiempo requerido por los empleados para completar ciertaswww.xlibros.com
CAPÍTULO 3 • ADMINISTRACIÓN DE PROYECTOS 73O P O R T U N I D A D D E C O N S U L T O R Í A 3 . 3Vamos a ver a los magosElphaba I. Menzel y Glinda K. Chenoweth son los propietariosde Paisajes Emerald City, un despacho de arquitectura de paisaje.Están tratando de decidir entre 1) escribir su propio software, tal vezmediante el uso de Microsoft Access como base; 2) adoptar un pa-quete de software COTS, como QuickBooks Pro, o 3) contratar unservicio conocido como Magos del Jardín, Inc., para que se encar-guen de todas sus funciones contables.Elphaba le pregunta a Glinda: “¿Es posible que podamos crearnuestro propio sistema?”.Glinda contesta: “Supongo que podríamos, pero nos llevaríauna eternidad. Tendríamos que definir todos nuestros campos, con-sultas e informes. Necesitaríamos saber quién no nos ha pagadotodavía y cuánto tiempo ha transcurrido desde la última vez que lecobramos”.“Sí”, dice Elphaba, “y también tendríamos que crear descrip-ciones de los productos, descripciones de los servicios y códigospara todo lo que vendemos y proveemos”.“Si eso fuera todo lo que necesitáramos, probablemente po-dríamos hacerlo”, añade Glinda. “Pero también necesitamos incluirun sistema de itinerarios. Necesitamos saber cuándo podemos pro-veer los servicios a nuestros clientes y qué hacer cuando nos retra-semos. Tal vez no valga la pena”.“Aun así”, reflexiona Glinda, “mi madre solía decir ‘No haylugar como el hogar’. Tal vez no haya software como el que creauno mismo”.“Estás viendo los dos lados de todo”, comenta Elphaba. “Perola ruta que quieres tomar es demasiado larga y riesgosa. Necesita-mos un paquete de software listo para usar ahora. He oído acerca deproductos conocidos como software comercial de venta en canalesconvencionales, el cual podemos comprar y adaptar a nuestro nego-cio de servicios de jardín. Voy a investigar”. Así, Elphaba se apre-sura a buscar software que pueda ser adecuado.“Encontré algo”, grita Elphaba. “Encontré este software lla-mado QuickBooks Pro en www.quickbooks.com y parece que po-demos pagarlo. Hay muchas versiones ya del software: una paracontabilidad, otra para construcción, otra para servicios de la salud.Tal vez podamos encontrar un paquete adecuado para nosotros. Y sino, parece que podemos personalizar la versión genérica de Quick-Books Pro para adaptarla a nuestras necesidades”.“Además, nuestro sistema podría crecer. QuickBooks Pro esescalable de antemano. Podemos agregar clientes, proveedores oproductos fácilmente. Sólo quería plantearte la idea de comprar unpaquete ya listo para usar”.“Es interesante”, dice Glinda, “pero he estado investigandopor mi cuenta también. Algunos de nuestros competidores me dije-ron que una empresa se encarga de todo el trabajo por ellos. Sellama Magos del Jardín. Hacen paisajes, pero además mantienenpaquetes de cuentas por cobrar y de itinerarios”.Así, fueron a ver a los Magos.Joel Green, el propietario y creador de Magos del Jardín, estáorgulloso de su software. “Invertí una gran cantidad de tiempo tra-bajando con mis proveedores, es decir, los viveros en el área, yhemos desarrollado un sistema para codificación para todo”, alar-dea. “Todos los árboles, los tamaños de los árboles, los arbustos, lasflores, el mantillo e incluso las herramientas para cuidar jardinestienen números”.“Empecé con una empresa pequeña, pero cuando los clientesse enteraron de que había puesto atención al más mínimo detalle,mi negocio floreció”. Y agrega: “Mis proveedores están enamora-dos de mi sistema debido a que reduce la confusión”.“Me di cuenta de que mis competidores trabajaban con losmismos proveedores, pero no recibían un trato preferencial debidoa que no podían comunicar los detalles sobre los productos conmucha efectividad. Entonces decidí que ofrecería mi software porcontrato. Ganaría dinero al rentar mi software y exigiría un mayorrespeto de mis proveedores. Mi acuerdo de licencia para el usuariofinal establece que yo soy dueño del software, los códigos de losproductos y los datos generados por el sistema”.“Mediante el uso de mi software único de los Magos puedopersonalizar un poco el paquete para el cliente, pero en esencia todoslos servicios de jardinería en el estado utilizarán mi base de datos,códigos y funciones B2B. Daré mantenimiento a mi propio software.Si pudieran ver el código, parecería un jardín con manicure”.Ahora Glinda y Elphaba están más confundidas que antes.Tienen tres opciones distintas: crear un paquete por su cuenta,comprar software comercial de venta en los canales convencionalestal como QuickBooks Pro, o subcontratar a los Magos del Jardínpara que satisfagan sus necesidades. Ayúdelas a que conozcan elverdadero secreto de la felicidad (del software) al expresar lasventajas y desventajas de cada una de sus alternativas. ¿Qué lesrecomendaría usted? Escriba en dos párrafos una recomendacióncon base en lo que usted considere con respecto a su situación denegocios específica.tareas. Y todavía quedan muchos ejemplos más. Aunque no siempre es fácil, podemos medir los beneficiostangibles en términos de ahorro de dinero, recursos o tiempo.BENEFICIOS INTANGIBLES Algunos beneficios que se acumulan en la organización debido al uso del sistemade información son difíciles de medir pero no dejan de ser importantes. A estos se les conoce como beneficiosintangibles.Entre los beneficios intangibles figuran un proceso de toma de decisiones mejorado, una mejoría en la preci-sión, la empresa se vuelve más competitiva en el servicio al cliente, mantiene una buena imagen comercial y au-menta la satisfacción en el trabajo para los empleados al eliminar las tareas tediosas. Como podemos ver en estalista, los beneficios intangibles son en extremo importantes y pueden tener implicaciones de largo alcance para laempresa, ya que se relacionan con personas tanto en el exterior como en el interior de la organización.Aunque los beneficios intangibles de un sistema de información son factores importantes que debemos con-siderar al momento de decidir si continuamos con un proyecto de sistemas o no, un sistema que se construyawww.xlibros.com
74 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASteniendo en cuenta sólo sus beneficios intangibles no tendrá éxito. Usted debe hablar sobre los beneficios tan-gibles e intangibles en su propuesta, ya que esto permitirá a los encargados de tomar las decisiones realizar unadecisión bien informada en relación con el sistema propuesto.COSTOS TANGIBLES Los conceptos de costos tangibles e intangibles son paralelos a los conceptos de losbeneficios tangibles e intangibles que vimos antes. Los costos tangibles son aquellos que el analista de sistemasy el personal contable de la empresa pueden pronosticar con precisión.Entre los costos tangibles se incluye el costo del equipo como las computadoras y terminales, el costo de losrecursos, el costo del tiempo del analista de sistemas, el costo del tiempo de los programadores y los salarios delos demás empleados relacionados. Por lo general, estos costos están bien establecidos o se pueden descubrir conmucha facilidad, y son los que requerirán un desembolso de efectivo por parte de la empresa.COSTOS INTANGIBLES Los costos intangibles son difíciles de estimar y tal vez no se conozcan. Entre éstos seincluyen perder la ventaja competitiva, perder la reputación de ser el primero con una innovación o el líder enun campo, reducir la imagen de la empresa debido al aumento en la inconformidad de los clientes, y un procesoinefectivo de toma de decisiones debido a que la información pertinente se recibe después de tiempo o no setiene acceso a ella. Como podrá imaginar, es casi imposible pronosticar un monto de dinero para los costosintangibles de una manera precisa. Para ayudar a los encargados de la toma de decisiones que desean ponderarel sistema propuesto y todas sus implicaciones, usted debe incluir los costos intangibles incluso cuando no seancuantificables.Comparación de los costos y beneficiosExisten muchas técnicas reconocidas para comparar los costos y beneficios del sistema propuesto. Entre éstas seincluyen: análisis de punto de equilibrio, retribución, análisis de flujo de efectivo y análisis del valor presente.Todas estas técnicas proveen formas simples y directas para ceder información a los encargados de tomar lasdecisiones en cuanto al mérito del sistema propuesto.ANÁLISIS DE PUNTO DE EQUILIBRIO Al comparar los costos por sí solos, el analista de sistemas puede utilizar elanálisis de punto de equilibrio para determinar la capacidad de punto de equilibrio del sistema de informaciónpropuesto. El punto en el que los costos totales del sistema actual y los del sistema propuesto se cruzan representael punto de equilibrio, es decir, donde es rentable para la empresa obtener el nuevo sistema de información.Los costos totales incluyen los que aparecen en forma recurrente durante la operación del sistema más loscostos de desarrollo que ocurren sólo una vez (costos únicos de instalación del nuevo sistema); es decir, los cos-tos tangibles que acabamos de ver. En la figura 3.11 hay un ejemplo de un análisis de punto de equilibro parauna pequeña tienda que mantiene su inventario mediante un sistema manual. A medida que se eleva el volumen,los costos del sistema manual se elevan en una tasa incremental. Un nuevo sistema computacional costaría unaCosto($) SistemapropuestoPunto deequilibrioSistemaactual10,00020,00030,00040,00050,00060,00070,00000 200 400 600 800 1,000 1,200Unidades vendidasCosto del sistemapropuestoCosto delsistema actualEquipo de AnnieFIGURA 3.11Análisis de punto de equilibriopara el sistema de inventariopropuesto.www.xlibros.com
CAPÍTULO 3 • ADMINISTRACIÓN DE PROYECTOS 75buena suma de dinero al inicio, pero los costos incrementales por un volumen mayor serían bastante bajos. Lagráfica muestra que el sistema computacional sería efectivo en costo para la empresa si vendiera aproximada-mente 600 unidades por semana.El análisis del punto de equilibrio es útil cuando una empresa está creciendo y el volumen es una variableclave en los costos. Una desventaja de este análisis es que se basa en la suposición de que los beneficios perma-necen iguales, sin importar el sistema que se utilice. Con base en nuestro estudio de los beneficios tangibles eintangibles sabemos que en definitiva no puede ser así.El análisis del punto de equilibrio también puede determinar cuánto tiempo tardarán los beneficios del sis-tema en retribuir los costos de su desarrollo. En la figura 3.12 se muestra un sistema con un periodo de retribu-ción de tres y medio años.ANÁLISIS DEL FLUJO DE EFECTIVO En este análisis se examina la dirección, el tamaño y el patrón del flujo deefectivo asociado con el sistema de información propuesto. Si usted va a proponer el reemplazo de un antiguosistema de información por uno nuevo y el nuevo sistema no generará efectivo adicional para la empresa, sólohay desembolsos de efectivo asociados con el proyecto. En tal caso no podrá justificar el nuevo sistema con baseen la generación de nuevos ingresos y deberá examinarlo de cerca para encontrar otros beneficios tangibles sidesea que su propuesta tenga éxito.En la figura 3.13 se muestra un análisis de flujo de efectivo para una pequeña empresa que provee serviciosde correo a otras pequeñas compañías en la ciudad. Las proyecciones de los ingresos son de sólo $5,000 en elprimer trimestre, pero después del segundo, los ingresos aumentarán con una tasa fija. Los costos serán mayoresen los primeros dos trimestres y luego se estabilizarán. El análisis de flujo de efectivo se utiliza para determinarcuándo empezará una empresa a obtener ganancias (en este caso es en el tercer trimestre, con un flujo de efectivode $7,590) y cuándo “saldrá de la red”; es decir, cuando los ingresos compensan la inversión inicial (en el primertrimestre del segundo año, cuando el flujo de efectivo acumulado cambia de un monto negativo a una cantidadpositiva de $10,720).El sistema propuesto debe traer consigo un aumento en los ingresos como contraparte de los desembolsos deefectivo. Por tanto, hay que analizar el tamaño del flujo de efectivo junto con los patrones asociados con la com-pra del nuevo sistema. Hay que averiguar cuándo ocurrirán los desembolsos de efectivo y los ingresos, no sólopara la compra inicial sino durante toda la vida del sistema de información.ANÁLISIS DEL VALOR PRESENTE Este análisis ayuda al analista de sistemas a presentar, a los encargados de tomarlas decisiones en la empresa, el valor en tiempo de la inversión en el sistema de información así como el flujo deefectivo (como vimos en la sección anterior). El valor presente es una forma de evaluar todos los desembolsoseconómicos y los ingresos del sistema de información durante su vida económica, y de comparar los costosactuales con los futuros, al igual que los beneficios actuales con los beneficios futuros.En la figura 3.14, el total de costos del sistema es de $272,000 durante seis años y el total de beneficios esde $280,700. Por lo tanto, podríamos concluir que los beneficios sobrepasan a los costos. Sin embargo, los bene-ficios empezaron a sobrepasar a los costos hasta después del cuarto año y el monto en el sexto año no podrá serequivalente al monto en el primer año.Costo($)CostosBeneficios10,00020,00030,00040,00050,00060,00070,00000123456Año Costo($)Costosacumulados($)Beneficiosacumulados($)Beneficios($)30,0001,0002,0002,0003,0004,0004,00030,00031,00033,00035,00038,00042,00046,000012,00012,0008,0008,00010,00015,000012,00024,00032,00040,00050,00065,0000 1 2 3 4 5 6AñoBeneficios acumuladosdel sistema propuestoCostos acumuladosdel sistema propuestoPeriodo deretribuciónFIGURA 3.12El análisis del punto de equilibriomuestra un periodo de retribuciónde tres años y medio.www.xlibros.com
76 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASIngresosCostosAño 1Trimestre 2 Trimestre 3 Trimestre 4 Trimestre 1Trimestre 1Año 2$5,000 $20,000 $24,960 $31,270 $39,020Desarrollode softwarePersonalCapacitaciónArrendamientode equipoProvisionesMantenimiento10,0008,0003,0004,0001,000026,0005,0008,4006,0004,0002,0002,00027,4008,8004,0002,3702,20017,3709,2604,0002,9902,42018,6709,7004,0003,7302,66020,090Flujo de efectivoFlujo de efectivoacumulado–21,000–21,000–7,400–28,4007,590–20,810 –8,21012,60010,72018,930Costos totalesFIGURA 3.13Análisis de flujo de efectivo parael sistema de correoscomputarizado.1 2 3 4 5 6 TotalAño$40,000$25,00042,00031,20044,10039,00046,30048,70048,60060,800CostosBeneficios51,00076,000272,000280,700FIGURA 3.14Sin considerar el valor presente,los beneficios parecen sobrepasara los costos.1 2 3 4 5 6 TotalAño$40,000.8935,600$25,000.8922,25042,000.8033,60031,200.8024,96044,100.7131,31139,000.7127,69046,300.6429,63248,700.6431,16848,600.5727,70260,800.5734,65651,000.5126,01076,000.5138,760 179,484183,855Valor presente de los beneficiosMultiplicadorValor presente de los costosMultiplicadorCostosBeneficioFIGURA 3.15Tomando en cuenta el valor presente, la conclusión es que los costos son mayores que los beneficios. Nos basamos en la suposición de que latasa de descuento i es de 0.12 para calcular los multiplicadores en esta tabla.Por ejemplo, una inversión en dólares al 7 por ciento actual valdría $1.07 al final del año y se duplicaría enaproximadamente 10 años. Por lo tanto, el valor actual es el costo del beneficio calculado en dólares actuales ydepende del costo del dinero. El costo del dinero es el costo de oportunidad, o la tasa que se obtendría si el di-nero invertido en el sistema propuesto se invirtiera en otro proyecto (relativamente seguro).Para calcular el valor presente de $1.00 a una tasa de descuento de i se determina el siguiente factor:111 + i 2nen donde n es el número de periodos. Después se multiplica el factor por la cantidad en dólares para obtener elvalor presente, como se muestra en la figura 3.15. En este ejemplo, nos basamos en la suposición de que el costodel dinero —la tasa de descuento— es de 0.12 (12 por ciento) durante todo el horizonte de planificación. Se calcu-lan multiplicadores para cada periodo: n  1, n  2, ..., n  6. Después se calculan los valores presentes de loswww.xlibros.com
CAPÍTULO 3 • ADMINISTRACIÓN DE PROYECTOS 77costos y los beneficios mediante estos multiplicadores. Después de realizar ese paso, los beneficios totales (me-didos en dólares actuales) son de $179,484 y por ende son menores que los costos (también medidos en dólaresactuales). La conclusión que obtenemos es que el sistema propuesto no vale la pena si tenemos en cuenta el valorpresente.Aunque este ejemplo en el que se utilizaron factores de valor presente es útil para explicar el concepto, todaslas hojas de cálculo electrónicas incluyen la función del valor presente. El analista puede calcular directamente elvalor presente mediante esta función.LINEAMIENTOS PARA EL ANÁLISIS El uso de los métodos descritos en las subsecciones anteriores depende de losmétodos empleados y aceptados en la misma organización. Sin embargo, como lineamientos generales podemosdecir lo siguiente:1. Use el análisis del punto de equilibrio si hay que justificar el proyecto en términos de costos y no debeneficios, o si los beneficios no mejoran en forma considerable con el sistema propuesto.2. Use la retribución cuando el aumento en los beneficios tangibles forme un argumento convincente para elsistema propuesto.3. Use el análisis de flujo de efectivo cuando el proyecto sea costoso con relación al tamaño de la empresa ocuando ésta se vea afectada en forma considerable si hay que desembolsar una gran cantidad de fondos(incluso si esto es temporal).4. Use el análisis del valor presente cuando el periodo de retribución sea largo o cuando el costo de pedirdinero prestado sea alto.Cualquiera que sea el método elegido, es importante recordar que el análisis de costo-beneficio se debe abordarde una manera sistemática que se pueda explicar y justificar a los gerentes, quienes decidirán en última instanciasi van a comprometer o no los recursos en el proyecto de sistemas. Ahora veamos la importancia de compararmuchas alternativas de sistemas.PLANEACIÓN Y CONTROL DE ACTIVIDADESEl análisis y diseño de sistemas involucra muchos tipos de actividades que en conjunto forman un proyecto. Elanalista de sistemas debe administrar el proyecto con cuidado si quiere que tenga éxito. La administración deproyectos incluye las tareas generales de planeación y control.La planeación incluye todas las actividades requeridas para seleccionar un equipo de análisis de sistema, asignarmiembros del equipo a los proyectos apropiados, estimar el tiempo requerido para completar cada tarea y programarel proyecto de manera que las tareas se completen a tiempo. El control implica utilizar retroalimentación para super-visar el proyecto, incluyendo una comparación del plan para el proyecto con su evolución actual. Además, el controlimplica tomar la acción apropiada para agilizar o reprogramar las actividades de manera que se puedan terminar atiempo, a la vez que se motiva a los miembros del equipo para que completen el trabajo en forma apropiada.Estimación del tiempo requeridoLa primera decisión del analista de sistemas es determinar el nivel de detalle para definir las actividades. Elmenor nivel de detalle es el SDLC en sí, mientras que el extremo más alto es incluir cada paso detallado. La res-puesta óptima para la planeación y programación está en algún lado entre estos dos extremos.Aquí es conveniente usar una metodología estructurada. En la figura 3.16, el analista de sistemas que empiezaun proyecto ha descompuesto el proceso en tres fases importantes: análisis, diseño e implementación. Después, laFase ActividadAnálisis Recopilación de datosAnálisis de flujo de datos y decisionesPreparación de la propuestaDiseño Diseño de la entrada de datosDiseño de las entradasDiseño de las salidasOrganización de los datosImplementación ImplementaciónEvaluaciónDescomponerlas principalesactividades enotras máspequeñas.FIGURA 3.16Para empezar a planear unproyecto hay que descomponerloen tres actividades principales.www.xlibros.com
78 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASfase de análisis se descompone aún más en recopilación de datos, análisis de flujo de datos y decisiones, y la prepa-ración de la propuesta. El diseño se descompone en diseño de la entrada de datos, diseño de las entradas y las sali-das y organización de los datos. La fase de implementación se divide en implementación y evaluación.En los pasos subsiguientes, el analista de sistemas necesita considerar cada una de estas tareas y descom-ponerlas más, de manera que se pueda llevar a cabo la planeación y programación de las mismas. En la figura 3.17O P O R T U N I D A D D E C O N S U L T O R Í A 3 . 4Alimento para el pensamiento“ Realmente podríamos hacer algunos cambios. Sacudir a algu-nas personas. Hacerles saber que estamos con eso. Me refiero alaspecto tecnológico”, dice Malcolm Warner, vicepresidente de All-Fine Foods, un distribuidor de productos lácteos al mayoreo. “Hayque revisar y reparar ese antiguo sistema. Pienso que deberíamosdecir al personal que es tiempo de cambiar”.“Sí, pero ¿qué deberíamos estar mejorando?” pregunta KimHan, asistente del vicepresidente. “Es decir, no hay problemas sus-tanciales con la entrada o salida del sistema que pueda ver”.Malcolm chasquea los dedos y dice: “Kim, estás ignorandodeliberadamente mi punto de vista. Afuera las personas nos vencomo una empresa aburrida. Un nuevo sistema computacional po-dría cambiar eso. Cambiar la apariencia de nuestras facturas. Enviarinformes más llamativos a los propietarios de las cafeterías y res-taurantes. Destacar como líderes en la distribución de alimentos ylas computadoras”.“Bueno, con base en lo que he visto a través de los años”,Kim responde sin alterar la voz, “un nuevo sistema es muy perju-dicial, incluso si la empresa realmente lo necesita. A las personasles disgustan los cambios, y si el sistema está funcionando comodebe, tal vez haya otras cosas que debamos hacer para actualizarnuestra imagen sin que todos se vuelvan locos en el proceso. Ade-más, estás hablando de muchos billetes verdes para un nuevo trucopublicitario”.Malcolm dice: “No creo que con sólo lanzar una moneda aquíentre nosotros dos vayamos a resolver algo. Revísalo y volvemos adiscutirlo. ¿No sería maravilloso?”.Una semana después, Kim entra en la oficina de Malcolm convarias páginas de notas de entrevistas en la mano. “Hablé con la mayorparte de las personas que tienen mucho contacto con el sistema. Estánfelices, Malcolm. Y no sólo hablan por hablar. Saben lo que hacen”.“Estoy seguro de que a los gerentes les gustaría tener un sis-tema más reciente que nuestros amigos de Quality Foods”, res-ponde Malcolm. “¿Hablaste con ellos?”.Kim le contesta: “Sí. Y están satisfechos”.“¿Y qué hay sobre los de sistemas? ¿Te dijeron que la tecnolo-gía para actualizar nuestro sistema está ahí afuera?”, preguntaMalcolm con insistencia.“Sí. Claro que se puede hacer. Pero eso no significa que sedeba hacer”, dice Kim con firmeza.Como analista de sistemas para AllFine Foods, ¿cómo evalua-ría usted la viabilidad del proyecto de sistemas que propone Mal-colm? Con base en lo que dijo Kim sobre los gerentes, usuarios yencargados de sistemas, ¿cuál parece ser la viabilidad operacionaldel proyecto propuesto? ¿Qué hay sobre la viabilidad económica?¿Y la viabilidad tecnológica? Con base en lo que discutieron Kim yMalcolm, ¿recomendaría usted que se realizara un estudio detalladode sistemas? Escriba su respuesta en un párrafo.8y despuésestimar eltiempo requerido.Realizar entrevistasAdministrar cuestionariosLeer informes de la compañíaIntroducir el prototipoObservar las reacciones al prototipoAnalizar el flujo de datosRealizar el análisis de costo-beneficioPreparar la propuestaPresentar la propuestaRecopilación de datosAnálisis de flujo de datos y decisionesPreparación de la propuesta34453322SemanasrequeridasActividad detalladaActividadDescomponeréstos inclusoaún másFIGURA 3.17Para refinar la planeación yprogramación de las actividadesde análisis hay que agregar tareasdetalladas y establecer el tiemporequerido para completarlas.www.xlibros.com
CAPÍTULO 3 • ADMINISTRACIÓN DE PROYECTOS 79se muestra una descripción más detallada de la fase de análisis. Por ejemplo, la recopilación de datos se des-compone en cinco actividades, desde realizar entrevistas hasta observar las reacciones al prototipo. Este pro-yecto en especial requiere un análisis del flujo de datos pero no de las decisiones, por lo que el analista desistemas escribió “analizar el flujo de datos” como el paso individual en la fase media. Por último se descom-pone la preparación de la propuesta en tres pasos: realizar un análisis de costo-beneficio, preparar la propuestay presentarla.Desde luego que el analista de sistemas tiene la opción de descomponer los pasos incluso aún más. Porejemplo, podría especificar cada una de las personas a entrevistar. El grado de detalle necesario depende del pro-yecto, pero todos los pasos críticos deben aparecer en los planes.Algunas veces la parte más difícil de la planeación de un proyecto es el paso crucial de estimar el tiemporequerido para completar cada tarea o actividad. Cuando se les preguntó sobre los motivos de retrasarse en unproyecto específico, los miembros del equipo del proyecto hablaron sobre las malas estimaciones en la progra-mación de los tiempos que obstaculizaron el éxito del proceso desde su inicio. No hay sustituto para la experien-cia al estimar los requerimientos de tiempo; los analistas de sistemas que han tenido la oportunidad de aprendersobre ello son afortunados.Los planificadores han intentado reducir la incertidumbre inherente al determinar las estimaciones detiempo mediante una proyección de las estimaciones más probables, pesimistas y optimistas, para despuésutilizar una fórmula de promedio ponderado con el fin de determinar el tiempo esperado que una actividadrequerirá. Sin embargo, esta metodología apenas si ofrece algo más de confianza. Tal vez la mejor estrategiapara el analista de sistemas sea adherirse a una metodología estructurada para identificar las actividades ydescribirlas con el suficiente detalle. De esta forma, el analista de sistemas podrá por lo menos limitar las sor-presas desagradables.Uso de gráficos de Gantt para programar proyectosUn gráfico de Gantt es una forma fácil de programar tareas. Es un gráfico en el que las barras representan cadatarea o actividad. La longitud de cada barra representa la longitud relativa de la tarea.En la figura 3.18 hay un ejemplo de un gráfico de Gantt bidimensional, en el cual el tiempo se indica en ladimensión horizontal y una descripción de las actividades conforma la dimensión vertical. En este ejemplo, elgráfico de Gantt muestra la fase de análisis o recopilación de información del proyecto. En este gráfico podemosobservar que, por ejemplo, las entrevistas requerirán tres semanas y la administración del cuestionario requerirácuatro. Estas actividades se traslapan la mayor parte del tiempo. En el gráfico, el símbolo especial  indica quees la semana 9. Las barras con sombras de colores representan proyectos o partes de proyectos que se han com-pletado, lo cual nos indica que el analista de sistemas está atrasado en la introducción de los prototipos pero ade-lantado en el análisis de los flujos de datos. Hay que tomar acción en cuanto a introducir los prototipos pronto,de manera que no se retrasen las demás actividades o incluso el proyecto en sí como resultado.La principal ventaja del gráfico de Gantt es su simpleza. El analista de sistemas no sólo descubrirá que estatécnica es fácil de usar, sino que también se presta para una comunicación valiosa con los usuarios finales. Otraventaja de usar un gráfico de Gantt es que las barras que representan actividades o tareas se dibujan a escala; esdecir, el tamaño de la barra indica la longitud de tiempo relativa que se requerirá para completar cada tarea.ActividadActividad incompletaActividad completadaActividad parcialmentecompletada1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23Realizar entrevistasAdministrar cuestionariosLeer informes de la compañíaAnalizar flujos de datosIntroducir prototipoObservar reaccionesRealizar análisis de costo-beneficioPreparar la propuestaPresentar la propuestaSemanasSemana actualFIGURA 3.18Uso de un gráfico de Ganttbidimensional para planearactividades que se pueden realizaren paralelo.www.xlibros.com
80 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASUso de diagramas PERTPERT es un acrónimo que significa Técnicas de evaluación y revisión de programas. Un programa (sinónimo deproyecto) se representa mediante una red de nodos y flechas que después se evalúan para determinar las activida-des críticas, mejorar el programa de trabajo en caso de ser necesario y revisar el avance una vez que se empieceel proyecto. PERT se desarrolló a finales de la década de 1950 para usarlo en el proyecto del submarino nuclearPolaris de la Marina de los EE.UU. Según se informa, ahorró a la Marina de los EE.UU. dos años de tiempo dedesarrollo.PERT es útil cuando las actividades se pueden realizar en paralelo en vez de hacerlo en secuencia. El ana-lista de sistemas se puede beneficiar de PERT al aplicarlo en los proyectos de sistemas a una escala menor, enespecial cuando algunos miembros del equipo pueden trabajar en ciertas actividades al mismo tiempo que otroscompañeros trabajan en otras.En la figura 3.19 se compara un gráfico de Gantt simple con un diagrama PERT. Las actividades que seexpresan en el gráfico de Gantt como barras se representan mediante flechas en el diagrama PERT. La longitudde las flechas no tiene relación directa con la duración de las actividades. Los círculos en el diagrama PERT sedenominan eventos y se pueden identificar mediante números, letras o cualquier otro método arbitrario de desig-nación. Los nodos circulares sirven para 1) reconocer que una actividad se completó y 2) indicar qué actividadeshay que completar para poder empezar una nueva (precedencia).En realidad, la actividad C no se puede empezar sino hasta que se termine la actividad A. La precedencia nose indica de ninguna forma en el gráfico de Gantt, por lo que no es posible saber si la actividad C está progra-mada para empezar el día 4 a propósito o por coincidencia.Un proyecto tiene un inicio, una parte media y un final; el inicio es el evento 10 y el final es el evento 50.Para encontrar la longitud del proyecto se identifica cada una de las rutas de principio a fin y se calcula la longi-tud de cada ruta. En este ejemplo, la ruta 10-20-40-50 tiene una longitud de 15 días, mientras que la ruta 10-30-40-50 tiene una longitud de 11 días. Incluso cuando una persona puede estar trabajando en la ruta 10-20-40-50 yotra en la ruta 10-30-40-50, el proyecto no es una carrera, sino que requiere que se completen ambos conjuntosde actividades (o rutas); en consecuencia, el proyecto tardará 15 días en completarse.La ruta más larga se conoce como la ruta crítica. Aunque ésta se determina mediante el cálculo de la rutamás larga, se define como la ruta que provocará que todo el proyecto se atrase si se encuentra en ella un retrasode incluso un día. Tenga en cuenta que si está retrasado por un día en la ruta 10-20-40-50, todo el proyecto tardarámás tiempo, pero si está retrasado por un día en la ruta 10-30-40-50 no todo el proyecto sufrirá. A la libertad deretrasarse un poco en las rutas no críticas se le denomina tiempo de inactividad.En ocasiones los diagramas PERT necesitan seudoactividades, conocidas como actividades simuladas, parapreservar la lógica del diagrama o aclararlo. En la figura 3.20 aparecen dos diagramas PERT con actividadessimuladas. Los proyectos 1 y 2 son bastante distintos y la forma en que se dibuja la actividad simulada ayudaa aclarar la diferencia. En el proyecto 1 la actividad C se puede iniciar sólo si se terminaron las actividades A y B,ABCDE2 4 6 8 10 12 14 16A, 4 C, 5B, 2 D, 3E, 610203040 50FIGURA 3.19Comparación entre los gráficos deGantt y los diagramas PERT paraprogramar actividades.www.xlibros.com
CAPÍTULO 3 • ADMINISTRACIÓN DE PROYECTOS 81ya que todas las flechas que entran a un nodo deben completarse antes de salir del nodo. Sin embargo, en el pro-yecto 2 la actividad C sólo requiere que se complete la actividad B y, por lo tanto, puede empezar mientras laactividad A se esté llevando a cabo.El proyecto 1 tarda 14 días en completarse, mientras que el proyecto 2 requiere sólo 9 días. Sin duda, la ac-tividad simulada en el proyecto 1 es necesaria, ya que indica una relación de precedencia crucial. Por otra parte,la actividad simulada en el proyecto 2 no se requiere, por lo que la actividad A se podría dibujar del nodo 10 alnodo 40 para eliminar por completo el evento 20.Existen muchas razones para utilizar un diagrama PERT en vez de un gráfico de Gantt. El diagrama PERTpermite:1. Identificar con facilidad el orden de precedencia.2. Identificar con facilidad la ruta crítica y, en consecuencia, las actividades críticas.3. Determinar con facilidad el tiempo de inactividad.UN EJEMPLO DE PERT Suponga que un analista de sistemas trata de establecer un programa de horarios realistapara las fases de recopilación de datos y propuesta del ciclo de vida del análisis y diseño de sistemas. El analistade sistemas analiza la situación y hace una lista de las actividades que hay que realizar a lo largo del camino.Esta lista, que se muestra en la figura 3.21, también muestra que algunas actividades deben realizarse antes queotras. Las estimaciones de tiempo se determinaron según lo descrito en una sección anterior de este capítulo.DIBUJAR EL DIAGRAMA PERT Para construir el diagrama PERT, el analista primero se basa en las actividadesque no requieren actividades predecesoras; en este caso A (realizar entrevistas) y C (leer los informes de lacompañía). En el ejemplo de la figura 3.22, el analista optó por enumerar los nodos como 10, 20, 30 y así en losucesivo, y dibujó dos flechas saliendo del nodo inicial 10. Estas flechas representan las actividades A y C, yse identifican como tales. Los nodos enumerados como 20 y 30 se dibujan al final de estas respectivas flechas.A, 9B, 2 C, 5C, 5A, 9B, 22010 4010 40302030ActividadsimuladaActividadsimulada Proyecto 1Proyecto 2FIGURA 3.20La precedencia de las actividadeses importante para determinar lalongitud del proyecto al utilizar undiagrama PERT.Actividad DuraciónPredecesorABCDEFGHIRealizar entrevistasAdministrar cuestionariosLeer informes de la compañíaAnalizar el flujo de datosIntroducir el prototipoObservar las reacciones al prototipoRealizar un análisis de costo-beneficioPreparar la propuestaPresentar la propuestaNingunoANingunoB, CB, CEDF, GH344853322FIGURA 3.21Listado de las actividades quese utilizará en el dibujo de undiagrama PERT.www.xlibros.com
82 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASA, 3C, 4B, 4D, 8E, 5 F, 3G, 3 H, 2 I, 230 504060 70 801020FIGURA 3.22Un diagrama PERT completo parala fase de análisis de un proyectode sistemas.El siguiente paso es buscar una actividad que sólo requiera a A como predecesor; la tarea B (administrarcuestionarios) es la única, por lo que se puede representar mediante una flecha dibujada desde el nodo 20hasta el nodo 30.Como las actividades D (analizar el flujo de datos) y E (introducir el prototipo) requieren que las ac-tividades B y C se completen para poder empezar, las flechas etiquetadas como D y E se dibujan desde elnodo 30, el evento que reconoce que se completaron las actividades B y C. Este proceso continúa hasta quese completa todo el diagrama PERT. Observe que el proyecto completo termina en un evento identificadocomo el nodo 80.IDENTIFICAR LA RUTA CRÍTICA Una vez dibujado el diagrama PERT, para identificar la ruta crítica se calculala suma de los tiempos de las actividades en cada ruta y se elige la ruta más larga. En este ejemplo hay cuatrorutas: 10-20-30-50-60-70-80, 10-20-30-40-60-70-80, 10-30-50-60-70-80 y 10-30-40-60-70-80. La ruta más largaes 10-20-30-50-60-70-80, que tarda 22 días. Es esencial que el analista de sistemas supervise con cuidado lasactividades en la ruta crítica para poder mantener el proyecto completo a tiempo o incluso reducir la longitud delproyecto, si se puede garantizar.ADMINISTRACIÓN DEL PROYECTOEl proceso de análisis y diseño puede ser difícil de manejar, en especial cuando el sistema a desarrollar es grande.Para mantener las actividades de desarrollo lo más manejables que sea posible, por lo general empleamos algu-nas de las técnicas de la administración de proyectos para ayudarnos a organizar todo.Un aspecto importante de la administración de proyectos es cómo manejar nuestro programa de horariospara terminar el sistema a tiempo, pero no es lo único que se requiere. La persona a cargo, el gerente del pro-yecto, es a menudo el jefe de analistas de sistemas. El gerente del proyecto necesita comprender cómo deter-minar qué es necesario y cómo iniciar un proyecto; cómo desarrollar la definición de un problema, examinarla viabilidad de completar el proyecto de sistemas, reducir el riesgo, identificar y administrar las actividades, ycontratar, administrar y motivar a los demás miembros del equipo.Cómo lidiar con la complejidad del sistemaLos modelos de estimaciones, como Constar (www.softstarsystems.com) o Construx (www.construx.com),trabajan de la siguiente forma: primero el analista de sistemas introduce una estimación del tamaño del sis-tema. Ésta se puede introducir de distintas formas, incluyendo las líneas de código fuente del sistema actual.Después puede ser útil ajustar el grado de dificultad con base en qué tan familiarizado esté el analista con estetipo de proyecto.También se consideran otras variables, como la experiencia o capacidad del equipo, el tipo de plataforma osistema operativo, el nivel de capacidad de uso del software terminado (por ejemplo, cuáles lenguajes son nece-sarios) y otros factores que pueden impulsar los costos. Una vez introducidos los datos se realizan los cálculos yse produce una proyección aproximada de la fecha de terminación. A medida que el proyecto se lleva a cabo, esposible obtener estimaciones más específicas.Otra forma de estimar la cantidad de trabajo a realizar y el personal necesario para completar un proyecto seconoce como análisis de puntos de función. Este método toma los cinco componentes principales de un sistemacomputacional —1) entradas externas, 2) salidas externas, 3) consultas externas, 4) archivos lógicos internos y5) archivos de interfaz externos— y después los califica en términos de complejidad.El análisis de puntos de función puede estimar el tiempo requerido para desarrollar un sistema en distintoslenguajes computacionales y compararlos entre sí. Para obtener más información sobre el análisis de puntos defunción, visite el sitio Web del Grupo de usuarios internacionales de puntos de función en www.ifpug.org.www.xlibros.com
CAPÍTULO 3 • ADMINISTRACIÓN DE PROYECTOS 83ADMINISTRACIÓN DE LAS ACTIVIDADES DE ANÁLISIS Y DISEÑOAdemás de administrar el tiempo y los recursos, los analistas de sistemas también deben administrar a las perso-nas. Esto requiere una comunicación precisa con los miembros del equipo que hayan sido seleccionados con baseen su competencia y compatibilidad. Es necesario establecer los objetivos para la productividad del proyecto yhay que motivar a los miembros de los equipos de análisis de sistemas para lograrlos.Ensamblar un equipoEs conveniente ensamblar un equipo. Si el gerente del proyecto tiene la oportunidad de crear el equipo idealcompuesto por personas experimentadas para desarrollar un sistema, ¿a quién debería escoger? En general, losgerentes de proyectos necesitan buscar a otros que compartan sus valores de trabajo en equipo guiados por eldeseo de producir un sistema de alta calidad a tiempo y dentro del presupuesto. Otras características deseablesincluyen una buena ética laboral, honestidad, competencia, la disposición de asumir el liderazgo con base en laexperiencia, la motivación, el entusiasmo por el proyecto y la confianza de sus compañeros de equipo.El gerente del proyecto necesita conocer los principios de negocios, pero no está de más contar con algunaotra persona en el equipo que comprenda la forma en que opera una empresa. Tal vez esta persona debería serun especialista en la misma área que la del sistema que se va a desarrollar. Al desarrollar un sitio de comercioelectrónico, los equipos pueden conseguir la ayuda de alguien en marketing; los que desarrollen un sistema deinventarios pueden preguntar a una persona con experiencia en producción y operaciones para que comparta suexperiencia.Lo ideal sería que un equipo tuviera dos analistas de sistemas. De esta forma se pueden ayudar entre sí, re-visar uno el trabajo del otro y equilibrar sus cargas de trabajo según se requiera. Sin duda existe la necesidad deA T R A C T I V O D E L A M A CLa codificación de colores ayuda a un gerente de proyectos a poner en orden las fases, tareas y recursos similares.OmniPlan, disponible para la Mac, aprovecha la codificación de colores para establecer un proyecto, identificar lastareas, identificar la ruta crítica y marcar las situaciones imposibles.FIGURA 3.MACEl software de administración de proyectos OmniPlan de The Omni Group.www.xlibros.com
84 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMAStener en el equipo personas con habilidades de programación. La codificación es importante, pero las personasque sepan cómo realizar recorridos, revisiones, pruebas y documentar sistemas son también importantes. Algu-nas personas son buenas para ver la idea general mientras que otras tienen un buen desempeño cuando las tareasse descomponen en otras más pequeñas. Cada equipo debe tener ambos tipos de individuos.Además de lo básico, un gerente de proyectos debe buscar personas con experiencia y entusiasmo. La expe-riencia es en especial importante cuando tratamos de estimar el tiempo requerido para completar un proyecto. Laexperiencia en programación puede referirse a que el código se podría desarrollar cinco veces más rápido que silo desarrollara un equipo inexperto. También es útil contar con un experto de capacidad de uso en el equipo.El equipo debe estar motivado. Una forma de mantener la orientación positiva del mismo durante todo elproceso es seleccionar a las personas adecuadas desde el inicio. Busque entusiasmo, imaginación y la habilidadde comunicarse con distintos tipos de personas. Estos atributos básicos contienen el potencial para el éxito. Tam-bién es conveniente contratar buenos redactores y oradores elocuentes que puedan presentar propuestas y traba-jar directamente con los clientes.La confianza es una parte importante de un equipo. Todos los miembros del proyecto deben actuar respon-sablemente y comprometer su mejor esfuerzo para completar su parte del proyecto. Tal vez las personas tenganestilos de trabajo distintos, pero todos necesitan estar de acuerdo en trabajar en conjunto hacia la obtención deuna meta común.Estrategias de comunicación para administrar equiposCada equipo tiene una personalidad particular resultante de combinar a los miembros entre sí de una maneraque se genera una red totalmente nueva de interacciones. Una forma de organizar lo que usted piensa sobre losequipos es visualizarlos como si estuvieran siempre buscando un equilibrio entre realizar el trabajo a la mano ymantener las relaciones entre los miembros del equipo.De hecho, es común que los equipos tengan dos líderes y no solo uno. Por lo general surge una persona quedirige a los miembros para realizar tareas y otra que se preocupa por las relaciones sociales entre los miembrosE X P E R I E N C I A D E H Y P E R C A S E ® 3 . 1“Espero que todos con los que se haya encontrado en MRE lohayan tratado bien. He aquí un breve repaso de algunas de lasformas en las que puede acceder a nuestra organización a través deHyperCase. El área de recepción en MRE contiene los vínculosclave para el resto de nuestra organización. Tal vez ya descubrióestos vínculos por su cuenta, pero quisiera recordarle sobre ellosen este momento, ya que no me gustaría absorberme tanto en elresto de los problemas de la organización como para olvidar men-cionarlos”.“La entrada vacía que puede ver es un vínculo a la siguientesala, a la cual llamamos Atrio Este (East Atrium). Tal vez haya ob-servado que todas las entradas abiertas son vínculos a salas adya-centes. Observe el mapa del edificio que se muestra en el área derecepción. Puede ir a las áreas públicas como la cantina, pero comosabe, puede acceder a una oficina privada sólo si lo acompaña unempleado. No puede entrar ahí por su cuenta”.“Para estos momentos tal vez haya observado los dos docu-mentos y la computadora en la pequeña mesa en el área de recep-ción. El documento pequeño es el directorio telefónico interno deMRE. Sólo necesita hacer clic en el nombre de un empleado y, si lapersona se encuentra en la empresa, le concederá una entrevista yun paseo por la oficina. Dejaré a su criterio averiguar qué es el otrodocumento”.“La computadora en la mesa está encendida y muestra la pá-gina Web inicial de MRE. Debería dar un vistazo al sitio corpora-tivo y visitar todos los vínculos. Este sitio cuenta la historia denuestra empresa y las personas que trabajan aquí. Estamos muyorgullosos de él y hemos recibido retroalimentación positiva denuestros visitantes”.“Si ya tuvo oportunidad de entrevistar a unas cuantas personasy ver cómo funciona nuestra empresa, no hay duda de que ha em-pezado a darse cuenta de algunas de las políticas involucradas.Aunque también estamos preocupados por más cuestiones técnicas;por ejemplo, qué es lo que constituye la viabilidad para un proyectode capacitación y qué es lo que no”.Preguntas de HYPERCASE1. ¿Qué criterio utiliza la Unidad de capacitación (TrainingUnit) para juzgar la viabilidad de un nuevo proyecto? Hagauna lista.2. Haga una lista de los cambios o modificaciones a estoscriterios que usted recomendaría.3. Snowden Evans le pidió que ayudara a preparar unapropuesta para un nuevo sistema de seguimiento deproyectos para la Unidad de capacitación. Describabrevemente la viabilidad técnica, económica y operacionalde cada alternativa para un sistema de rastreo de proyectospropuesto para la Unidad de capacitación.4. ¿Qué opción recomendaría? Use evidencia de HyperCasepara respaldar su decisión.www.xlibros.com
CAPÍTULO 3 • ADMINISTRACIÓN DE PROYECTOS 85del grupo. Ambos son necesarios para el equipo. Otros investigadores han etiquetado a estos individuos respec-tivamente como líder de tareas y líder socioemocional. Cada equipo está sujeto a tensiones que surgen del hechode buscar un equilibrio entre realizar las tareas y mantener las relaciones entre los miembros del equipo.Para que el equipo pueda preservar su efectividad hay que resolver las tensiones en forma continua. Si sólominimizamos o ignoramos las tensiones, el equipo se volverá inefectivo y al final se desintegrará. Gran parte dela liberación necesaria de la tensión se puede lograr a través del uso habilidoso de la retroalimentación por partede todos los miembros del equipo. Sin embargo, todos los miembros tienen que estar de acuerdo en que laforma de interactuar (es decir, el proceso) es lo suficientemente importante como para merecer algo de tiempo.En una sección posterior veremos los objetivos de productividad para los procesos.Para asegurar que todos estén de acuerdo en la interacción apropiada de los miembros, hay que crear nor-mas de equipo explícitas e implícitas (expectativas, valores y formas de comportamiento colectivas) para guiara los miembros en sus relaciones. Las normas de un equipo le pertenecen a éste y no necesariamente se puedentransferir a otro. Estas normas cambian a través del tiempo y se pueden considerar más como un proceso de in-teracción que un producto.Las normas pueden ser funcionales o disfuncionales. Sólo porque un comportamiento específico sea unanorma para un equipo no significa que esté ayudándolo a lograr sus objetivos. Por ejemplo, la expectativa de quelos miembros más recientes tengan que realizar toda la programación de tiempos de los proyectos puede ser unanorma de equipo. Al adherirse a ésta, el equipo está colocando mucha presión en los nuevos miembros y no estáaprovechando por completo la experiencia del mismo. Es una norma que, si se lleva a cabo, podría hacer que losmiembros del equipo desperdicien recursos valiosos.Los miembros del equipo necesitan explicitar las normas y evaluar en forma periódica si son funcionales odisfuncionales para ayudar a que el equipo logre sus objetivos. La expectativa primordial para su equipo debe serque el cambio es la norma. Pregúntese si las normas del equipo ayudan o dificultan el progreso del equipo.Establecer objetivos de productividad del proyectoCuando haya trabajado con los miembros del equipo en varios tipos de proyectos, usted o el líder de su equipoadquirirán perspicacia para proyectar lo que el equipo puede lograr en un periodo específico de tiempo. Si utilizalas sugerencias descritas en la sección anterior de este capítulo sobre los métodos para estimar el tiempo reque-rido y las acopla con la experiencia, el equipo podrá establecer objetivos de productividad que valgan la pena.O P O R T U N I D A D D E C O N S U L T O R Í A 3 . 5Cuidar los objetivos“ Esto es lo que creo podemos lograr en las siguientes cincosemanas”, dice Hy, el líder de su equipo de análisis de sistemas,sacando con mucha seguridad un programa donde relaciona unalista de los miembros del equipo con una de objetivos a corto plazo.Hace apenas una semana su equipo de análisis de sistemas pasó poruna intensa reunión para agilizar el programa de su proyecto paraKitchenet, Ontario, Redwings, una organización de hockey.Los otros tres miembros del equipo miran sorprendidos la ta-bla. Finalmente uno de los miembros, Rip, habla: “Estoy en shock.De por sí cada uno de nosotros tiene mucho por hacer, y ahoraesto”.Hy contesta en forma defensiva, “Tenemos que aspirar alto,Rip. Están en pretemporada. Es el único momento en que podemosconseguirlos. Si establecemos nuestros objetivos a un nivel dema-siado bajo no terminaremos el prototipo del sistema, y mucho me-nos el sistema en sí, antes de que pase otra temporada de hockey. Laidea es brindar a Kitchener Redwings la ventaja para pelear pormedio del uso de su nuevo sistema”.Fiona, otro miembro del equipo, entra a la discusión diciendo:“¡Dios sabe que sus jugadores no les pueden dar eso!” Se detiene aesperar el acostumbrado refunfuñar del grupo reunido y después con-tinúa: “Pero en serio, estos objetivos son asesinos. Por lo menos po-drían haber pedido nuestra opinión, Hy. Incluso hasta podríamos tenerun mejor conocimiento que tú en cuanto a lo que es posible hacer”.“Éste es un problema apremiante; no una fiesta de té, Fiona”,le responde Hy. “Efectuar una delicada encuesta con los miembrosdel equipo no era una de nuestras opciones. Había que hacer algorápido y me decidí por estos objetivos. Opino que enviemos nuestroprograma de horarios a la administración con base en ellos. Pode-mos posponer las fechas de entrega más adelante si es necesario.Pero de esta forma ellos sabrán que nos comprometimos a tratar delograr mucho durante la pretemporada”.Como el cuarto miembro que escucha este continuo intercam-bio de palabras, formule tres sugerencias que ayudarían a Hy amejorar su metodología para la formación y presentación de objeti-vos. ¿Qué tan motivado cree usted que estará el equipo si compartenla opinión de Fiona en cuanto a los objetivos de Hy? ¿Cuáles sonlas posibles ramificaciones de plantear a la administración unosobjetivos demasiado optimistas? Escriba un párrafo dedicado a losefectos a corto plazo y otro en el que discuta sobre los efectos alargo plazo de establecer objetivos demasiado altos.www.xlibros.com
86 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASLos analistas de sistemas están acostumbrados a pensar acerca de los objetivos de productividad para losempleados que muestran salidas tangibles, como el número de pantalones de mezclilla que se cosen por hora, elnúmero de entradas introducidas por minuto o el número de artículos que se escanean por segundo. Sin embargoy a medida que aumenta la productividad de la manufactura, es cada vez más claro que la productividad adminis-trativa debe mantener el ritmo. Es con este propósito en mente que se establecen los objetivos de productividadpara el equipo de análisis de sistemas.El equipo necesita formular los objetivos y estar de acuerdo en ellos; además se deben basar en la experien-cia de los miembros del equipo, el desempeño en proyectos anteriores y la naturaleza del proyecto específico. Losobjetivos variarán un poco para cada proyecto que se emprenda, ya que algunas veces se instalará todo un sistemamientras que otros proyectos podrían involucrar modificaciones limitadas a una parte de un sistema existente.Motivación de los miembros del equipo del proyectoAunque la motivación es un tema en extremo complejo, es conveniente considerarlo en esta etapa, aunque sea porun momento. Para simplificar de más hay que recordar que las personas se unen a las organizaciones para manteneralgunas de sus necesidades básicas, como alimentación, vestido y albergue. Sin embargo, todos los humanos tienentambién necesidades de mayor nivel, entre las cuales están la afiliación, el control, la independencia y la creativi-dad. Las personas se motivan para satisfacer las necesidades que no se han cumplido en varios niveles.Los miembros de un equipo se pueden motivar, al menos en forma parcial, por medio de la participación enel establecimiento de los objetivos, como vimos en la sección anterior. El acto en sí de establecer un objetivo de-safiante pero alcanzable y después comparar el rendimiento en forma periódica con el objetivo parece funcionara la hora de motivar a las personas. Los objetivos actúan casi como imanes para atraer a las personas al éxito.Parte de la razón por la que el proceso de establecer objetivos motiva a las personas es que los miembros delequipo saben con exactitud lo que se espera de ellos antes de cualquier revisión del desempeño. El éxito del es-tablecimiento de objetivos para motivar a las personas también se puede atribuir a ello, con lo cual se concede acada uno de los miembros del equipo cierta autonomía para lograr los objetivos. Aunque un objetivo es predetermi-nado, el medio para lograrlo tal vez no lo sea. En este caso los miembros del equipo tienen la libertad de utilizarsu propia experiencia y habilidad para cumplir sus objetivos.El establecimiento de objetivos también puede motivar a los miembros del equipo debido a que les pone enclaro a ellos y a las demás personas involucradas qué se debe hacer para obtener resultados. Los miembros delequipo también se motivan con base en los objetivos, ya que éstos definen el nivel de éxito que se espera de ellos.Al utilizar los objetivos de esta forma se simplifica la atmósfera de trabajo, pero también se electrifica debido a laincertidumbre con respecto a completar lo que se esperaba.Administración de proyectos de comercio electrónicoMuchas de las metodologías y técnicas que vimos antes en este libro se pueden transferir a la administraciónde proyectos de comercio electrónico. Sin embargo, le advertimos que a pesar de tantas similitudes, tambiénhay muchas diferencias. Una de ellas es que los datos que utilizan los sistemas de comercio electrónico estánesparcidos por toda la organización. Por lo tanto, no sólo termina administrando datos en un departamento auto-contenido, o incluso en una unidad aislada. Por ende pueden entrar en juego muchas políticas de la organización,ya que es común que las unidades quieran proteger los datos que generan y no comprendan la necesidad de com-partirlos con toda la organización.Otra diferencia contundente es que por lo general los proyectos de comercio electrónico necesitan más per-sonal con distintas habilidades: desarrolladores, consultores, expertos en bases de datos e integradores de siste-mas, de todas las áreas de la organización. Si lo definimos en forma concisa, los grupos de proyectos establesque existan dentro de un grupo de ingeniería de sistemas (IS) o de un equipo de desarrollo de sistemas serán laexcepción a la regla. Además, como es probable que se requiera mucha ayuda al principio, los gerentes de pro-yectos de comercio electrónico necesitan construir sociedades tanto externas como internas mucho antes de laimplementación del proyecto, y tal vez tengan que compartir talentos entre proyectos para sufragar los costos delas implementaciones de comercio electrónico y reunir el número requerido de personas con la experiencia nece-saria. El potencial que tienen las políticas organizacionales de separar a los miembros de un equipo es muy real.Una manera de evitar que las políticas saboteen un proyecto es que el gerente del proyecto de comercioelectrónico enfatice la integración del comercio electrónico con los sistemas internos de la organización, dandorelevancia al aspecto organizacional del proyecto. Como un gerente de proyectos de comercio electrónico nosdijo: “La parte sencilla de todo esto es diseñar la interfaz de usuario [lo que ve el consumidor]. El verdadero de-safío está en integrar el comercio electrónico de una manera estratégica en todos los sistemas de la organización”.La cuarta diferencia entre la administración de proyectos tradicionales y la administración de proyectos decomercio electrónico es que, como el sistema se enlazará con el mundo exterior a través de Internet, la seguridades de primordial importancia. El proceso de desarrollar e implementar un plan de seguridad antes de implantar elnuevo sistema constituye un proyecto por sí solo, por lo que debemos administrarlo como tal.www.xlibros.com
CAPÍTULO 3 • ADMINISTRACIÓN DE PROYECTOS 87Creación de los estatutos del proyectoUna parte del proceso de planeación consiste acordar qué se va a hacer y en qué momento. Tanto los analistas queson consultores externos como los que son miembros de la organización necesitan especificar qué entregarán ycuándo lo harán. En este capítulo le explicaremos las formas de estimar la fecha de entrega para el sistema com-pleto, además de cómo identificar los objetivos organizacionales y evaluar la viabilidad del sistema propuesto.Los estatutos del proyecto son una narrativa escrita que aclara las siguientes cuestiones:1. ¿Qué espera el usuario del proyecto (cuáles son los objetivos)? ¿Qué hará el sistema para satisfacer lasnecesidades (lograr los objetivos)?2. ¿Cuál es el alcance (o los límites) del proyecto? (¿Qué considera el usuario que esté más allá del alcance delproyecto?)3. ¿Qué métodos de análisis utilizará el analista para interactuar con los usuarios en el proceso de recopilar losdatos, desarrollar y probar el sistema?4. ¿Quiénes son los participantes clave? ¿Cuánto tiempo están dispuestos los usuarios y se puedencomprometer a participar?5. ¿Cuáles son los entregables del proyecto? (¿Cuáles son los componentes nuevos o actualizados de software,hardware, procedimientos y documentación que los usuarios esperan que estén disponibles para interactuarcon ellos al momento de terminar el proyecto?)6. ¿Quién evaluará el sistema y cómo lo hará? ¿Cuáles son los pasos en el proceso de evaluación? ¿Cómo y aquién se comunicarán los resultados?7. ¿Cuál es el cronograma estimado del proyecto? ¿Con qué frecuencia informarán los analistas sobre losavances del proyecto?8. ¿Quién capacitará a los usuarios?9. ¿Quién se encargará de dar mantenimiento al sistema?Los estatutos del proyecto describen en un documento escrito los resultados esperados del proyecto de sis-temas (entregables) y el periodo para la entrega. En esencia, este documento se convierte en un contrato entreel analista en jefe (o gerente del proyecto), su equipo de análisis y los usuarios de la organización que solicitan elnuevo sistema.Cómo evitar fracasos en los proyectosPor lo general las primeras discusiones que haya tenido usted con la administración y las demás personas quesolicitan un proyecto, junto con los estudios de viabilidad que realice, son la mejor defensa posible para evitartomar proyectos que tengan una alta probabilidad de fracasar. Su capacitación y experiencia mejorarán su ca-pacidad para juzgar si un proyecto vale la pena, junto con las motivaciones que impulsan a otros a solicitar losproyectos. Si usted forma parte de un equipo de análisis de sistemas dentro de una empresa, se debe mantener altanto del clima político de la organización, así como de las situaciones financieras y competitivas.Sin embargo, es importante recalcar que los proyectos de sistemas pueden y llegan a tener problemas gra-ves. Los proyectos que se desarrollan mediante el uso de métodos ágiles no son inmunes a dichos problemas.Para poder ilustrar lo que puede salir mal en un proyecto, es conveniente que el analista de sistemas dibuje undiagrama de esqueleto de pescado o “fishbone” (también conocido como diagrama de causa y efecto, o diagramade Ishikawa). Si examina la figura 3.23 podrá ver que, en efecto, se asemeja al esqueleto de un pescado.El valor de estos diagramas reside en que muestran una lista sistemática de todos los posibles problemas. Enel caso de la metodología ágil, es conveniente organizar el diagrama con base en una lista de todas las variablesde control de recursos en la parte superior y todas las actividades en la parte inferior. Algunos problemas comoel desplazamiento del programa de horarios podrían ser obvios, pero otros como la corrupción del alcance, o“scope creep” (el deseo de agregar características después de que el analista escucha nuevas historias), o desarro-llar características con poco valor, no lo son tanto.También puede aprender de la sabiduría que obtuvieron las personas involucradas en fracasos de proyectosanteriores. Cuando se les pidió que reflexionaran sobre la causa que provocó que fracasaran los proyectos, losprogramadores profesionales alegaron que la administración había establecido fechas imposibles o poco realistaspara completar el proyecto, con base en el mito de que con sólo agregar más personas a un proyecto se agilizaríasu desarrollo (incluso cuando la fecha de entrega original del proyecto era poco realista), y que la administraciónse comportó de una manera irracional al prohibir que el equipo buscara expertos profesionales fuera del grupopara ayudarlos a resolver problemas específicos.Recuerde que no está solo al decidir si empieza o no un proyecto. Aunque la administración esté al tanto de lasrecomendaciones de su equipo, serán ellos quienes decidan en última instancia si vale la pena continuar con el estu-dio de un proyecto propuesto (es decir, si se van a invertir más recursos o no). El proceso de decisión de su equipodebe ser abierto y capaz de resistir al escrutinio de los que estén fuera de él. Los miembros del equipo deben teneren cuenta que no pueden separar su reputación y postura dentro de la organización de los proyectos que acepten.www.xlibros.com
88 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASLA PROPUESTA DE SISTEMASOrganización de la propuesta de sistemasAunque el propósito de los estatutos del proyecto es identificar los objetos, determinar el alcance y asignar res-ponsabilidades, el analista también necesita preparar una propuesta de sistemas en la que se incluya la mayorcantidad de detalles sobre las necesidades, opciones y recomendaciones del sistema. En esta sección veremos elcontenido y el estilo que se utilizan para formular una propuesta de sistemas.QUÉ DEBEMOS INCLUIR EN LA PROPUESTA DE SISTEMAS Hay diez secciones principales que conforman unapropuesta de sistemas por escrito. Cada una de estas partes tiene una función específica, por lo que en últimainstancia la propuesta se debe ordenar de la siguiente manera:1. Carta de presentación.2. Portada del proyecto.3. Índice de contenido.4. Resumen ejecutivo (incluyendo las recomendaciones).5. Esquema del estudio de sistemas con la documentación apropiada.6. Resultados detallados del estudio de sistemas.7. Alternativas de sistemas (tres o cuatro posibles soluciones).8. Recomendaciones de los analistas de sistemas.9. Resumen de la propuesta.10. Apéndices (documentación variada, resumen de fases, correspondencia, etcétera).En la propuesta de sistemas debemos incluir una carta de presentación para los gerentes y la fuerza de tra-bajo de TI. Esta carta debe enlistar a las personas que hicieron el estudio e incluir un resumen de los objetivosdel mismo. La carta de presentación debe ser concisa y amigable.En la portada debe incluir el nombre del proyecto, los nombres de los miembros del equipo de análisis desistemas y la fecha en que se envía la propuesta. El título de la misma debe expresar con precisión su contenido,aunque también puede incluir algo de imaginación. El índice de contenido puede ser útil para los que leen pro-puestas extensas. Si la propuesta tiene menos de 10 páginas puede omitir el índice de contenido.Tasa de defectos excesivaEl cliente no estásatisfecho con la interfazMiedo al cambioEl diseño no es lobastante creativoTiempoAlta rotación del personalCaracterísticas conpoco valorSe requieren másprogramadoresCorrupción del alcance(scope creep)Desplazamientos en elprograma de horariosHay que cambiar el códigodebido a cambios en laempresaRetroalimentacióninadecuada de laspruebasInterrupción de lascomunicacionesEl sistema fracasa enlas pruebasComprensión incorrectade los negociosCódigo demasiadocomplejoCosto AlcanceCalidadDiseño Prueba Codificación EscuchaFIGURA 3.23Podemos utilizar un diagrama de esqueleto depescado (fishbone) para identificar todo lo quepuede salir mal en el desarrollo de un sistema.www.xlibros.com
CAPÍTULO 3 • ADMINISTRACIÓN DE PROYECTOS 89El resumen ejecutivo puede tener de 250 a 375 palabras. En él se informa el quién, qué, cuándo, dónde, porqué y cómo de la propuesta, de igual forma que lo haría el primer párrafo en un artículo de noticias. Tambiéndebe incluir las recomendaciones del analista de sistemas y la acción deseada por parte de la administración, yaque algunas personas tendrán tiempo de leer sólo el resumen. Debe escribirse al último, después de completar elresto de la propuesta.El esquema del estudio de sistemas provee información sobre los métodos que se utilizaron en el estudio, yquién o qué fue lo que se estudió. En esta sección se deben incluir los cuestionarios, las entrevistas, las muestrasde datos de archivo, los procesos de observación o creación de prototipos que se hayan utilizado en el estudio desistemas.La sección de resultados detallados describe lo que descubrió el analista de sistemas en relación con las ne-cesidades humanas y de sistemas por medio de todos los métodos descritos en la sección anterior. Aquí debemosincluir las conclusiones sobre los problemas que experimentan los trabajadores al interactuar con tecnologías ysistemas que pasan a primer plano a través del estudio. También hay que incluir los problemas o sugerir las opor-tunidades que presentan las alternativas que presentaremos en la siguiente sección.En la sección de la propuesta acerca de las alternativas de sistemas, el analista debe presentar dos o tres so-luciones alternativas que hagan frente de manera directa a los problemas antes mencionados. Las alternativas quese presenten aquí deben incluir una en la que se recomiende dejar el sistema como está. Hay que explorar cadaalternativa por separado. Además hay que describir los costos y beneficios de cada situación. Como por lo gene-ral hay puntos de conflicto involucrados en cualquier solución, asegúrese de incluir las ventajas y desventajas decada una.Cada alternativa debe indicar con claridad lo que deben hacer los usuarios y gerentes para implementarla. Laredacción debe ser lo más clara posible, como “Comprar computadoras portátiles para todos los gerentes de nivelmedio”, “Comprar software empaquetado para respaldar a los usuarios en el manejo del inventario” o “Modificarel sistema existente mediante el financiamiento de esfuerzos internos de programación”.Una vez que el analista de sistemas haya sopesado las alternativas, tendrá una opinión profesional definida so-bre la solución que sea más funcional. La sección de recomendaciones del analista de sistemas expresa la soluciónrecomendada. Aquí hay que incluir las razones que respaldan la recomendación del equipo, para que sea fácil com-prender por qué se recomienda. Esta recomendación debe fluir en forma lógica del análisis previo de las solucionesalternativas; además debe relacionar claramente los hallazgos sobre la interacción humano-computadora con la op-ción que se ofrece.El resumen de la propuesta es un enunciado corto que refleja el contenido del resumen ejecutivo. En él seinforman los objetivos del estudio y la solución recomendada. El analista debe enfatizar una vez más la impor-tancia y viabilidad del proyecto, junto con el valor de las recomendaciones para cumplir con los objetivos de losusuarios y mejorar la empresa. Concluya la propuesta con una observación positiva.El apéndice es la última parte de la propuesta de sistemas, y puede incluir cualquier información que el ana-lista de sistemas considere de interés para ciertos individuos, pero que no sea esencial para comprender el estudiode sistemas y lo que se está proponiendo.Una vez que termine de escribir la propuesta de sistemas, seleccione cuidadosamente quiénes van a recibirel informe. Entregue el informe personalmente a las personas que seleccionó. Su visibilidad es importante para laaceptación y el éxito en última instancia del sistema.Uso de figuras para una comunicación efectivaHasta este momento, el énfasis de esta sección ha estado en la audiencia de la propuesta de sistemas que usteddebe crear. Es importante utilizar tablas y gráficos, además del texto, para presentar los aspectos básicos del sis-tema propuesto. Nunca hay que menospreciar un buen diseño.La integración de figuras en su propuesta le ayuda a demostrar que usted está consciente de las distintas for-mas en que las personas absorben la información. Las figuras en el informe complementan la información escritay siempre se deben interpretar con palabras; nunca deben ir solas.USO EFECTIVO DE LAS TABLAS Aunque técnicamente las tablas no son ayudas visuales, son una manera distinta deagrupar y presentar los datos analizados que el analista desea comunicar al lector de la propuesta.Las tablas utilizan columnas y filas etiquetadas para presentar datos estadísticos o alfabéticos de una maneraorganizada. Cada tabla se debe enumerar de acuerdo con el orden en el que aparezca en la propuesta y debe tenerun título representativo. En la figura 3.24 se muestran el esquema y la identificación apropiados para una tabla.Algunos de los lineamientos para las tablas son:1. Integre las tablas en el cuerpo de la propuesta. No las relegue a los apéndices.2. Trate de ajustar toda la tabla verticalmente en una sola página, de ser posible.www.xlibros.com
90 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMAS3. Enumere y asigne un título a la tabla en la parte superior de la página. El título debe ser descriptivo yrepresentativo.4. Etiquete cada fila y columna. Use más de una línea para un título, de ser necesario.5. Use una tabla cuadriculada si hay espacio para ello. Las rayas verticales en las columnas mejoran lalegibilidad.6. Use notas al pie si es necesario para explicar la información detallada contenida en la tabla.En las secciones anteriores presentamos varios métodos para comparar costos y beneficios. Hay que poner losresultados de esas comparaciones en tablas y mostrarlos así en la propuesta de sistemas. Si realiza un análisisde punto de equilibro, debe incluir una tabla en la que se ilustren los resultados del análisis. La retribuciónse puede mostrar en tablas que sirvan como apoyo adicional para los gráficos. También podría incluir en la pro-puesta de sistemas una tabla pequeña en la que se comparen los sistemas computacionales o las opciones.USO EFECTIVO DE LOS GRÁFICOS Hay muchos tipos de gráficos: de línea, de columna, de barras y de pastel, pormencionar unos cuantos. Los gráficos de línea, de columna y de barra comparan variables, mientras que los debarras y de áreas ilustran la composición del 100 por ciento de una entidad.A continuación le mostramos los lineamientos para incluir gráficos efectivos en una propuesta (consulte lafigura 3.25):1. Seleccione un estilo de gráfico que transmita de manera efectiva el significado que desea.2. Integre el gráfico en el cuerpo de la propuesta.3. Asigne al gráfico un número de figura secuencial y un título representativo.4. Etiquete los ejes y las líneas, columnas, barras o piezas del pastel en el gráfico.5. Incluya una clave para identificar y diferenciar las líneas de colores, las barras sombreadas o las áreas conpatrones cuadriculados.Gran parte de los detalles que se incluyen en una propuesta de sistemas se obtienen de las entrevistas, loscuestionarios, los muestreos, el descubrimiento de otros datos rigurosos y mediante la observación. En los si-guientes dos capítulos hablaremos sobre estos temas.Tipo de conjunto 2004 2005 2006 2007 2008 200940 kg, gris 3.5 3.4 3.7 3.0 2.5 2.048 kg, gris 5.9 5.5 5.1 4.6 2.0 2.055 kg, gris 3.9 4.8 5.5 3.5 4.2 5.568 kg, gris 1.0 1.9 2.2 2.5 1.3 1.2100 kg, gris 1.2 1.8 1.5 0.7 1.2 1.555 kg, r,b,a* 3.4 6.5 2.6100 kg, r,b,a 0.8 1.8 1.2Tabla 4Cantidad de conjuntos de mancuernas que se vendieron por pesoy color durante los años de 2004 a 2009, incluyéndolos* r,b,a significa rojo, blanco y azulUse notas al piepara explicar lainformaciónTrate de ajustar latabla verticalmenteen una sola página.Hay que etiquetarlas filas y columnasRedacte un títulodescriptivo. El usode un cuadro mejorala apariencia de latabla.FIGURA 3.24Lineamientos para crear tablasefectivas.www.xlibros.com
CAPÍTULO 3 • ADMINISTRACIÓN DE PROYECTOS 91Los cinco fundamentos más importantes de la administraciónde proyectos que debe manejar el analista de sistemas son1) inicio del proyecto: definición del problema, 2) determinar laviabilidad del proyecto, 3) planeación y control de actividades,4) programación de fechas y tiempos del proyecto y 5) admi-nistración de los miembros del equipo de análisis de sistemas.Al enfrentarse a las cuestiones sobre cómo pueden las empresascumplir con sus objetivos y resolver problemas de sistemas, elanalista crea una definición del problema. Esta definición esun enunciado formal del problema, en el que se incluyen 1) lascuestiones de la situación presente, 2) los objetivos para cadacuestión, 3) los requerimientos que se deben incluir en todoslos sistemas propuestos y 4) las restricciones que limitan eldesarrollo de los sistemas.Seleccionar un proyecto es una decisión difícil, ya que sesolicitarán más proyectos de los que realmente se puedan llevara cabo. Cinco criterios importantes de selección son 1) que elproyecto solicitado esté respaldado por la administración,2) que se sincronice en forma apropiada para comprometer losrecursos, 3) que ayude a que la empresa avance hacia la obten-ción de sus objetivos, 4) que sea práctico y 5) que sea lo bas-tante importante como para considerarlo por encima de otrosproyectos.Si un proyecto solicitado cumple con estos criterios, sepuede realizar un estudio de viabilidad en cuanto a sus méritosoperacionales, técnicos y económicos. Por medio de este estu-dio de viabilidad los analistas recopilan datos que permiten a laadministración decidir si se puede o no continuar con un estu-dio de sistemas completo. Mediante un inventario ordenado delequipo con el que ya se cuenta, los analistas de sistemas podrándeterminar con más efectividad si deben recomendar o no hard-ware computacional nuevo, modificado o actual.El hardware computacional se puede adquirir mediantecompra, arrendamiento o renta. Los distribuidores ofrecenservicios de soporte como mantenimiento preventivo y capa-citación para los usuarios, que por lo general se negocian porseparado. El software se puede crear como un producto perso-nalizado, se puede comprar como un paquete de software co-mercial de venta en canales convencionales (COTS) o se puedesubcontratar un proveedor de servicios de aplicación (ASP)para que lo desarrolle.Para preparar una propuesta de sistemas hay que identifi-car todos los costos y beneficios de varias alternativas. El ana-lista de sistemas cuenta con varios métodos a su disposiciónpara pronosticar a futuro los costos, beneficios, volúmenes detransacciones y variables económicas que afectan a los costosy beneficios. Éstos pueden ser tangibles (cuantificables) o in-tangibles (no son cuantificables y es difícil compararlos direc-tamente). Un analista de sistemas tiene muchos métodos a sudisposición para analizar costos y beneficios, entre los cualesestán el análisis de punto de equilibrio, el método de retribu-ción y el análisis de flujo de efectivo.Costo($)70,00060,000Punto deequilibrio50,00040,00030,00020,00010,0002006 2007 2008 2009 2010AñoIncluya una clave.Incluya unrepresentativoCosto del sistemapropuestoCosto del sistemaactualFigura 5Se espera que el sistema propuestollegue al punto de equilibrio en 2010 Etiquete los ejesFIGURA 3.25Lineamientos para dibujar gráficosde líneas efectivos.RESUMENwww.xlibros.com
92 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASE X P E R I E N C I A D E H Y P E R C A S E ® 3 . 2“Algunas veces, las personas que han estado aquí durante ciertotiempo se sorprenden al ver cuánto hemos crecido. Admito que noes fácil llevar la cuenta de lo que hace cada persona, o incluso de lascompras que ha realizado cada departamento en cuanto al hardwarey software. Pero estamos trabajando en eso. A Snowden le gustaríaver más rendición de cuentas en las compras de computadoras.Desea asegurarse de que sepamos lo que tenemos, en dónde y porqué lo tenemos, quién lo usa y si está impulsando la productividadde MRE o, dicho con sus propias palabras, ‘si sólo se trata de unjuguete costoso’ del cual podamos deshacernos”.Preguntas de HYPERCASE1. Complete un inventario de equipo de cómputo para la unidadde capacitación y sistemas administrativos (Training andManagement Systems Unit) en el que describa todos lossistemas que encuentre. Sugerencia: Cree un formulario deinventario para simplificar su tarea.2. Use los lineamientos de evaluación de software que vimos enel libro para realizar una breve evaluación de GEMS, paquetede software utilizado por los empleados de sistemasadministrativos (Management Systems). Elabore una brevecrítica de un párrafo de este software personalizado ycompárelo con el software comercial de venta en los canalesconvencionales como Microsoft Project.3. Enliste los costos y beneficios intangibles de GEMS, segúnlo que informan los empleados de MRE.4. Describa brevemente las dos alternativas que considera Snowdenpara el sistema de rastreo e informes de proyectos propuesto.5. ¿Qué factores organizacionales y políticos debe considerarSnowden al proponer su nuevo sistema a MRE? (Describatres conflictos centrales en un párrafo corto.)La planeación de un proyecto incluye la estimación deltiempo requerido para cada una de las actividades del analista,la programación de tiempos y fechas de estas actividades, y lamanera de agilizarlas en caso de ser necesario para asegurarque el proyecto se termine a tiempo. Una técnica disponiblepara que el analista de sistemas pueda programar tareas es elgráfico de Gantt, el cual muestra las actividades como barrasen un gráfico.Hay otra técnica conocida como Técnicas de evaluacióny revisión de programas (PERT), la cual muestra las activida-des como flechas en una red. PERT ayuda al analista a determi-nar la ruta crítica y el tiempo de inactividad, lo que constituyela información requerida para el control efectivo del proyecto.Se recomienda la creación de un documento en el que seincluyan los estatutos del proyecto, el cual contiene las ex-pectativas de los usuarios y los productos que el analista debeFIGURA 3.HC1La sala de recepción se asemeja a la de una empresa común. Busque eldirectorio en esta pantalla de HyperCase si desea visitar a alguien.www.xlibros.com
CAPÍTULO 3 • ADMINISTRACIÓN DE PROYECTOS 93entregar, ya que los tiempos de entrega poco realistas exigidospor la administración, el agregar personal innecesario a un pro-yecto en el que se intenta cumplir con un tiempo de entregapoco realista y el no permitir que los equipos de desarrollobusquen ayuda de expertos fuera de su grupo inmediato, fueronfactores citados por los programadores como razones por lasque los proyectos fracasaban. Por lo general podemos evitar es-tos fracasos si examinamos las motivaciones para los proyectossolicitados, así como los motivos que tenga nuestro equipo pararecomendar o evitar un proyecto específico.El analista de sistemas debe realizar tres pasos principalespara elaborar una propuesta efectiva de sistemas: organizar elcontenido de la propuesta en forma efectiva, escribir la pro-puesta en un estilo de negocios apropiado y presentar en formaoral una propuesta de sistemas informativa. Para que sea efec-tiva, la propuesta se debe escribir en forma clara y compren-sible; además hay que dividir su contenido en diez seccionesfuncionales. Son importantes las consideraciones visuales a lahora de elaborar una propuesta.PALABRAS CLAVE Y FRASESadministración de proyectos de comercio electrónicoanálisis de flujo de efectivoanálisis de punto de equilibrioanálisis de puntos de funciónbenchmarkingbeneficios intangiblesbeneficios tangiblescostos intangiblescostos tangiblesdefinición del problemadiagrama PERTestatutos del proyectográfico de Ganttlíder de tarealíder socioemocionalmedia móvilmotivación del equiponormas del equipoobjetivos de productividadproceso de equipopronósticospropuesta de sistemasretribuciónruta críticasoporte del distribuidorvalor presenteviabilidad económicaviabilidad operacionalviabilidad técnicaPREGUNTAS DE REPASO1. ¿Cuáles son los cinco fundamentos principales de un proyecto?2. Mencione tres formas de averiguar sobre los problemas o las oportunidades potencialmente asociados con una soluciónde sistemas.3. Enliste los cinco criterios para la selección de proyectos de sistemas.4. Defina viabilidad técnica.5. Defina viabilidad económica.6. Defina viabilidad operacional.7. Mencione cuatro criterios para evaluar el hardware de sistemas.8. ¿Cuáles son las tres opciones principales para la adquisición de hardware computacional?9. ¿Qué significa COTS?10. ¿Qué implica un ASP, en términos de entrega de software?11. Defina los costos y beneficios tangibles. Dé un ejemplo de cada uno.12. Defina los costos y beneficios intangibles. Dé un ejemplo de cada uno.13. Enliste cuatro técnicas para comparar los costos y beneficios de un sistema propuesto.14. ¿Cuándo es útil el análisis de punto de equilibrio?15. ¿Cuáles son las tres desventajas de usar el método de retribución?16. ¿Cuándo se utiliza el análisis del flujo de efectivo?17. Como lineamiento general, ¿cuándo se debe utilizar el análisis del valor presente?18. ¿Qué es un gráfico de Gantt?19. ¿Cuándo es útil un diagrama PERT para los proyectos de sistemas?20. Mencione tres ventajas de usar un diagrama PERT en vez de un gráfico de Gantt para programar tiempos y fechas de losproyectos de sistemas.21. Defina el término ruta crítica.22. ¿Cómo evalúa un gerente de proyectos el riesgo de que las cosas salgan mal y de tener eso en cuenta al planear el tiemporequerido para completar el proyecto?23. Mencione los dos tipos de líderes de equipo.24. ¿Qué implica una norma de equipo disfuncional?25. ¿Qué implica el proceso de equipo?26. ¿Cuáles son tres razones por las que el establecimiento de objetivos parece motivar a los miembros del equipo de análisisde sistemas?27. ¿Cuáles son las cuatro formas en las que la administración de proyectos de comercio electrónico difiere de laadministración de proyectos tradicionales?www.xlibros.com
94 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMAS28. ¿Qué elementos contienen los estatutos del proyecto?29. ¿Para qué se utiliza un diagrama de esqueleto de pescado (fishbone)?30. ¿Cuáles son los tres pasos que debe seguir el analista de sistemas para elaborar una propuesta eficiente de sistemas?31. Enliste las 10 secciones principales de la propuesta de sistemas.PROBLEMAS1. Williwonk’s Chocolates de St. Louis fabrica varios tipos de dulces y novedades de chocolate. La empresa tiene seistiendas en la ciudad: cinco en los principales aeropuertos metropolitanos y una pequeña sucursal de pedidos por correo.Williwonk’s tiene un pequeño sistema de información computarizado que rastrea el inventario en su planta, ayuda aprogramar la producción y algunas otras cosas más, pero este sistema no está enlazado directamente con ninguna de sustiendas de menudeo. El sistema de pedidos por correo se administra en forma manual.Hace poco, varias tiendas de Williwonk’s experimentaron una erupción de quejas de los clientes de pedidos porcorreo, debido a que los dulces llegaban echados a perder, que no llegaban cuando se les prometía o que nunca llegaban;la empresa también recibió varias cartas en las que se quejaban de que los dulces en varios aeropuertos sabían rancios.Williwonk’s ha estado vendiendo una nueva forma dietética de chocolate bajo en calorías, formulada con un edulcoranteartificial. Las ventas han sido activas, pero han surgido problemas por enviar el tipo incorrecto de chocolate a ladirección en la que vive una persona diabética. Hubo varias quejas, por lo que Williwonk’s envió varias cajas gratis dechocolate como desagravio.A la gerencia le gustaría vender productos a través de Web, pero cuentan con sólo algunas páginas Web coninformación sobre la compañía y un formulario de pedidos que se puede imprimir. No existen los pedidos a través deWeb. A uno de los ejecutivos principales le gustaría vender chocolates personalizados con el nombre de una persona encada pieza. Aunque el área de producción aseguró a la gerencia que esto se podría hacer fácilmente, no hay un métodopara pedir tales chocolates personalizados.Otro de los ejecutivos principales mencionó que Williwonk’s se asoció con varios fabricantes de chocolateeuropeos y que importará chocolate de varios países. En la actualidad hay que hacer esto a través del teléfono, porcorreo electrónico o por correo convencional. El ejecutivo desea un sitio Web interno que permita a los empleadosrealizar pedidos directamente a las empresas asociadas. Todo esto ha provocado que varios gerentes soliciten un análisisde tendencias. Cuando hay inventario en exceso algunos chocolates se arrancian, mientras que otras veces hay escasez deciertos tipos de chocolate.Las tendencias de variación por temporadas y días festivos podrían ayudar a Williwonk’s a mantener un inventarioadecuado. El gerente de control de inventario insiste en que es necesario implementar todos los cambios antes de lasiguiente temporada festiva. “Hay que tener una fecha absoluta definida para que todo esté terminado”, recalcó Candy,una de los gerentes de nivel superior. “Debemos asegurarnos de que todo esté trabajando perfectamente antes de que elsitio se haga público”, continuó. “¡No quiero clientes que reciban los chocolates incorrectos!”. Además, el gerente deprocesamiento de pedidos mencionó que el sistema debe ser seguro.Usted llevaba trabajando dos semanas con Williwonk’s en varias modificaciones para su sistema de información deinventario cuando escuchó a dos gerentes discutir sobre estas cuestiones. Haga una lista de las posibles oportunidades oproblemas que se podrían convertir en proyectos de sistemas.2. ¿De dónde proviene la mayor parte de la retroalimentación sobre los problemas con los productos de Williwonk’s en elproblema 1? ¿Qué tan confiables son las fuentes? Explique en un párrafo.3. Después de conocerlos mejor, usted se acerca a los ejecutivos de la administración de Williwonk’s con sus ideas sobrelas posibles mejoras de sistemas que podrían hacerse cargo de algunos de los problemas o las oportunidades que semencionan en el problema 1.a. Escriba en dos párrafos sus sugerencias para los proyectos de sistemas. Haga todas las suposiciones realistas que seanecesario.b. ¿Hay problemas u oportunidades descritas en el problema 1 que no sean adecuadas? Explique su respuesta.4. Cree la definición de un problema para Williwonk’s, según lo que se describe en el problema 1. Estime lasponderaciones de importancia. Incluya por lo menos un requerimiento y una restricción.5. Cree una lista de requerimientos de los usuarios para la definición del problema que creó en el problema 4.6. Delicato, Inc., un fabricante de instrumentos precisos de medición para fines científicos, le presentó una lista deatributos que sus gerentes consideran que probablemente sean importantes para seleccionar un distribuidor de hardwarey software de computadora. Los criterios no se listan en orden de importancia.1. Bajo precio.2. Software escrito precisamente para aplicaciones de ingeniería.3. El distribuidor realiza mantenimiento de rutina en el hardware.4. Capacitación para los empleados de Delicato.a. Critique la lista de atributos en un párrafo.b. Use la entrada inicial para ayudar a Delicato, Inc., a generar una lista más adecuada de criterios para seleccionardistribuidores de hardware y software.7. SoftWear Silhouettes es una empresa de ventas por correo que está creciendo con rapidez y se especializa en ropa dealgodón. A la gerencia le gustaría expandir sus ventas al entorno Web mediante la creación de un sitio de comercioelectrónico. La empresa tiene dos analistas de sistemas que trabajan tiempo completo y un programador. Las oficinas dewww.xlibros.com
CAPÍTULO 3 • ADMINISTRACIÓN DE PROYECTOS 95Artículo Costos del sistema propuesto Costos del sistema actualAño 1Arrendamiento de equipo $20,000 $11,500Salarios 30,000 50,000Gastos generales 4,000 3,000Desarrollo 30,000 Año 2Arrendamiento de equipo $20,000 $10,500Salarios 33,000 55,000Gastos generales 4,400 3,300Desarrollo 12,000 Año 3Arrendamiento de equipo $20,000 $10,500Salarios 36,000 60,000Gastos generales 4,900 3,600Desarrollo Año 4Arrendamiento de equipo $20,000 $10,500Salarios 39,000 66,000Gastos generales 5,500 4,000Desarrollo la empresa se encuentran en una pequeña ciudad aislada en Nueva Inglaterra y los empleados que se hacen cargo delnegocio tradicional de pedidos por correo no conocen mucho de computadoras.a. Considerando la situación de la empresa, dibuje una lista de atributos de software en los que SoftWear Silhouettesdebería hacer énfasis a la hora de seleccionar el software para crear un sitio Web e integrar el negocio de pedidos porcorreo con el negocio del sitio Web.b. ¿Recomendaría usted software COTS, software personalizado o la subcontratación de un ASP? Indique su opción ydefiéndala en un párrafo.c. Liste las variables que contribuyeron a su respuesta en el inciso b.8. A continuación le presentamos la demanda de 12 años de Viking Village, un juego disponible en la actualidad paraequipos de bolsillo y teléfonos inteligentes (smartphones).a. Grafique los datos de la demanda para Viking Village.b. Determine la tendencia lineal para Viking Village mediante el uso de una media móvil de tres años.9. ¿Parecen tener los datos para Viking Village una variación cíclica? Explique.10. Interglobal Paper Company le ha pedido su ayuda para comparar su sistema computacional actual con uno nuevo que elconsejo de directores quisiera ver implementado. Los costos del sistema propuesto y del sistema actual son los siguientes:Año Demanda1998 20,1231999 18,9992000 20,9002001 31,2002002 38,0002003 41,2002004 49,7002005 46,4002006 50,2002007 52,3002008 49,2002009 57,600a. Use el análisis de punto de equilibrio para determinar el año en el que Interglobal Paper seequilibrará.b. Grafique los costos y muestre el punto de equilibrio.www.xlibros.com
96 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASAño Beneficios1 $55,0002 75,0003 80,0004 85,00011. A continuación se muestran los beneficios de sistemas para Interglobal Paper Company (del problema 10):a. Use los costos del sistema propuesto de Interglobal Paper del problema 10 para determinar el periodo de retribución(use el método de retribución).b. Grafique los beneficios contra los costos e indique el periodo de retribución.12. Glenn’s Electronics, una empresa pequeña, estableció un servicio de computadoras. La tabla que se muestra acontinuación muestra los ingresos esperados durante los primeros cinco meses de operación, además de los costos porremodelación de oficinas, etcétera. Determine el flujo de efectivo y el flujo de efectivo acumulado para la empresa.¿Cuándo se espera que Glenn’s muestre una ganancia?Julio Agosto Septiembre Octubre NoviembreIngresos $35,000 $36,000 $42,000 $48,000 $57,000CostosRemodelación de oficina $25,000 $8,000Salarios 11,000 12,100 $13,300 $14,600 $16,000Capacitación 6,000 6,000Arrendamiento de equipo 8,000 8,480 9,000 9,540 10,110Provisiones 3,000 3,150 3,300 3,460 3,630Año Costos Beneficios1 $33,000 $21,0002 34,600 26,2003 36,300 32,7004 38,100 40,8005 40,000 51,0006 42,000 63,70013. Alamo Foods de San Antonio desea introducir un nuevo sistema computacional para su almacén de productosperecederos. Los costos y beneficios de este sistema son:a. Dada una tasa de descuento del 8 por ciento (.08), realice un análisis del valor presente con los datos para AlamoFoods (sugerencia: use la fórmula1111 + i 2npara encontrar los multiplicadores para los años 1 al 6).b. ¿Cuál es su recomendación para Alamo Foods?14. a. Suponga que la tasa de descuento en el problema 13a cambia al 13 por ciento (.13). Realice el análisis del valorpresente utilizando la nueva tasa de descuento.b. ¿Cuál es su recomendación para Alamo Foods ahora?c. Explique la diferencia entre el problema 13b y el problema 14b.15. Resuelva el problema 13 usando un programa de hojas de cálculo electrónicas como Excel.16. Use un programa de hojas de cálculo para resolver el problema 12.17. Resuelva el problema 13 usando una función para el valor presente neto, como @NPV (x, rango) en Excel.18. Brian C. O’Byrne (según él, la “C” significa “congelado”) es propietario de una empresa de comida congelada y deseadesarrollar un sistema de información para rastrear los envíos a los almacenes.a. Use los datos de la tabla de la figura 3.EX1 para dibujar un gráfico de Gantt y ayudar a Brian a organizar suproyecto de diseño.b. ¿Cuándo sería apropiado usar un gráfico de Gantt? ¿Cuáles son las desventajas? Explique en un párrafo.www.xlibros.com
CAPÍTULO 3 • ADMINISTRACIÓN DE PROYECTOS 9719. Además de un gráfico de Gantt usted dibuja también un diagrama PERT para Brian, de forma que le pueda comunicar lanecesidad de mantener vigilada la ruta crítica. Consulte la figura 3.EJ2, que se derivó de los datos de la figura 3.EJ1.Liste todas las rutas, calcule e identifique la ruta crítica.DescripciónDibujar el flujo de datosDibujar árbol de decisionesRevisar árbolEscribir proyectoOrganizar diccionario de datosRealizar prototipo de salidaRevisar diseño de salidaEscribir casos de usoDiseñar base de datosTareaABCDEFGHIVa después deNingunaABC, IANingunaFNingunaH, E y GTiempo (semanas)54104729108FIGURA 3.EX1Datos para ayudar en laorganización de un proyecto dediseño para crear un sistemade información que rastrea losenvíos de comida congelada a losalmacenes.DescripciónEntrevistar ejecutivosEntrevistar personal en abastecimientode pedidosDiseñar prototipo de entradaDiseñar prototipo de salidaEscribir casos de usoRegistrar las reacciones del personal alos prototiposDesarrollar sistemaEscribir manual de capacitaciónCapacitar al personal que trabaja enel abastecimiento de pedidosTareaABCDEFGHIVa después deNingunaNingunaBA, CA, CDE, FB, GHTiempo (semanas)632342532FIGURA 3.EX3Tareas a realizar durante eldesarrollo de un sistema deabastecimiento de pedidos.10203050407060AF GEBICDHFIGURA 3.EX2El diagrama PERT de la empresade comida congelada de Brian.20. Cherry Jones es propietaria de una empresa de medicina homeopática llamada Fainthealers. Ella vende vitaminas y otrosproductos relativamente no perecederos para quienes desean opciones relacionadas con la medicina alternativa. Cherryestá desarrollando un nuevo sistema en el que hay que volver a capacitar al personal. Dada la información de la figura3.EJ3, realice un diagrama PERT para ella e identifique la ruta crítica. Si Cherry pudiera encontrar la forma de ahorrartiempo en la fase “escribir casos de uso”, ¿sería útil? ¿Por qué sí o por qué no?21. Angus McIndoe quiere modernizar su popular restaurante, para lo cual piensa adaptarlo más a las preferencias de susclientes frecuentes: llevar el registro de lo que les gusta y disgusta. Por ende le interesa toda la información sobre loslugares en los que les gusta sentarse, qué prefieren comer y a qué hora llegan por lo general, ya que piensa que de estaforma podrá atender mejor a sus clientes. Angus le ha pedido a usted que desarrolle un sistema para él que le ayude amantener felices a sus clientes y, consecuentemente, mejorar su negocio.Usted ha escuchado lo que Angus dijo sobre sus clientes. Sin duda hay más preferencias que puede rastrear.Desarrolle la definición del problema para Angus, en forma similar a la que desarrolló para el Servicio de banquetesde Catherine en este capítulo.22. Hace poco, dos analistas recién egresados se unieron a su grupo de analistas de sistemas en la recién formada empresaMega Phone. Cuando hablaron con usted sobre el grupo, mencionaron que algunas cosas les parecen extrañas. Una deellas es que, aparentemente, los miembros del grupo admiran a dos líderes, Bill y Penny, y no sólo a uno.www.xlibros.com
98 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASLo que observan es que Bill parece bastante relajado, mientras que Penny siempre está planeando y programandoactividades. También observaron que todos “simplemente parecen saber qué hacer” cuando entran a una reunión, inclusocuando no se proporcionan instrucciones. Por último, resaltaron la apertura del grupo en cuanto a lidiar con losproblemas a medida que van surgiendo, en vez de dejar que las cosas se salgan de control.a. A modo de explicación para los nuevos miembros del equipo, identifique los tipos de líderes que parecen ser Bill yPenny, respectivamente.b. Explique el enunciado de “todos simplemente parecen saber qué hacer”. ¿Qué es lo que guía su comportamiento?c. ¿Qué concepto describe de una mejor manera la apertura del grupo que mencionaron los nuevos miembros delequipo?23. “Pienso que es justo escribir todas las alternativas que has considerado”, dice Lou Cite, un supervisor de personalpara Day-Glow Paints. “Después de todo, has estado trabajando en esta cosa de los sistemas durante un buen tiempo ycreo que tanto a mi jefe como a los demás les interesaría ver lo que averiguaste”. Usted está hablando con Lou altiempo que se prepara para elaborar la propuesta final de sistemas que su equipo presentará a la gerencia de nivelsuperior.a. En un párrafo explique a Lou por qué su propuesta no contendrá (y no debe hacerlo) todas las alternativas que suequipo ha considerado.b. En un párrafo hable sobre los tipos de alternativas que deben aparecer en la propuesta final de sistemas.PROYECTOS EN GRUPO1. Weil Smile Clinic es una clínica dental operada por los doctores Bonnie y Jeff; ellos necesitan mantener a salvo los datosnecesarios sobre sus pacientes y los seguros médicos. Investigaron sobre los respaldos en línea como SOS Online, SpareBackup, Mozy Remote Backup y Data Deposit Box. Analice el costo de estos u otros servicios para después ayudar a losdoctores Bonnie y Jeff a tomar una decisión. ¿Cuáles son los costos y beneficios intangibles al respaldar información deesta forma? ¿Deberían usar un sistema de respaldo o buscar alguna otra forma? Defienda su análisis y susrecomendaciones.2. Explore cuatro o cinco proveedores de voz sobre IP (VoIP). Haga una lista de los costos, incluyendo la cuota deinstalación, el costo mensual del plan básico, el costo mensual del plan ilimitado y el costo de un adaptador o cualquierotra cuota requerida. Después elabore una lista de atributos como las llamadas gratis en la red, llamadas internacionales,números telefónicos virtuales, teleconferencias, soporte para ID de llamadas, etcétera. Explique cómo podría utilizar unapersona toda la información cuantitativa y cualitativa para tomar una decisión informada sobre el proveedor de VoIPadecuado. ¿Hay algunas otras variables importantes? ¿Recomendaría algún tipo de software para que ayude a compararestos servicios?3. Seleccione un proveedor de VoIP con base en el análisis del proyecto en grupo 2.4. Con los miembros de su equipo, explore el software de administración de proyectos como Microsoft Project. ¿Quécaracterísticas hay disponibles? Trabaje con su grupo para hacer una lista de ellas. Haga que su grupo evalúe la utilidaddel software para administrar un proyecto del equipo de análisis y diseño de sistemas. Indique en un párrafo si elsoftware que va a evaluar facilita la comunicación de los miembros el equipo y la administración de las actividades,tiempo y recursos del equipo. Indique las características específicas que respaldan estos aspectos de cualquier proyecto.Observe si el software no alcanza a cumplir estos criterios en cualquier aspecto.5. Dibuje un diagrama de esqueleto de pescado sobre los posibles problemas que pueden ocurrir al construir un sitio Webpara una agencia de viajes que desea vender paquetes vacacionales en línea para el siguiente periodo extenso devacaciones (ya sea diciembre o junio).BIBLIOGRAFÍA SELECCIONADAAlter, S. Information Systems: The Foundation of E-Business, 4ta. Edición, Upper Saddle River, NJ: Prentice Hall, 2002.Bales, R.F. Personality and Interpersonal Behavior, Nueva York: Holt, Rinehart y Winston, 1970.Carnegie-Mellon Software Engineering Institute, “CBS Overview”. Disponible en: www.sei.cmu.edu/cbs/overview.html. Úl-timo acceso: 15 de julio de 2009.Construx Software Builders. Disponible en: www.construx.com. Último acceso: 15 de julio de 2009.Sitio Web de Costar. Disponible en: www.softstarsystems.com. Último acceso: 15 de julio de 2009.Glass, R. “Evolving a New Theory of Project Success”, Communications of the ACM, Vol. 42, Núm. 11, 1999, pp. 17-19.Levine, D. M., P. R. Ramsey y M. L. Berenson. Business Statistics for Quality and Productivity. Upper Saddle River, NJ: Pren-tice Hall, 1995.Linberg, K. R. “Software Perceptions About Software Project Failure: A Case Study”. Journal of Systems and Software, Vol.49, Núm. 2 y 3, 1999, pp. 177-92.Longstreet Consulting, www.ifpug.org. Último acceso: 15 de julio de 2009.McBreen, P. Questioning Extreme Programming. Boston: Addison-Wesley Co., 2003.www.xlibros.com
CAPÍTULO 3 • ADMINISTRACIÓN DE PROYECTOS 99Schein, E. H. Process Consultation: Its Role in Organization Development. Reading, MA: Addison-Wesley, 1969.Shtub, A., J. F. Bard y S. Globerson. Project Management: Processes, Methodologies, and Economics, 3era. Edición. UpperSaddle River, NJ: Pearson, 2005.Software Product Research. Disponible en www.spr.com. Último acceso: 15 de julio de 2009.Stefik, M., G. Foster, D. G. Bobrow, K. Kahn, S. Lanning y L. Suchman. “Beyond the Chalkboard: Computer Support for Co-llaboration and Problem Solving in Meetings”. Communications of the ACM, Vol. 30, Núm. 1, enero 1987, pp. 32-47.Vigder, M. R, W. M. Gentleman y J. C. Dean. “Using COTS Software in Systems Development”, http://www.nrc-cnrc.gc.ca/eng/projects/iit/commercial-software.html. Último acceso: 15 de julio de 2009.Walsh, B. “Your Network’s Not Ready for E-Commerce”, Network Computing. Disponible en: www.networkcomputing.com/922/022colwalsh.html. Último acceso: 15 de julio de 2009.www.xlibros.com
100 PARTE I • FUNDAMENTOS DEL ANÁLISIS DE SISTEMASE P I S O D I O 3CASO DE LA CPUALLEN SCHMIDT, JULIE E. KENDALL Y KENNETH E. K ENDALLLlegar a conocerteChip entra a la oficina de Anna un día y dice: “Creo que el proyecto será uno bueno, incluso aunque se estátardando mucho en empezar”.Anna quita la mirada de la pantalla y le sonríe. “Me gusta lo que has hecho para organizarnos”, dice.“No sabía que Microsoft Visio y Visible Analyst podrían ayudarnos tanto con la administración del proyecto.He decidido realizar un diagrama PERT para la parte de recolección de los datos del proyecto. Esto nosayudará a planear nuestro tiempo y trabajar como equipo en actividades paralelas”.“¿Puedo dar un vistazo al diagrama PERT?”, pregunta Chip.Anna le muestra una pantalla con un diagrama PERT (vea la figura E3.1) y comenta: “Esto nos ayudaráinmensamente. Es mucho más fácil que planear al azar”.“Acabo de ver que tienes Recopilar informes, Recopilar registros y formularios de captura de datos, yRecopilar documentos cualitativos como tareas paralelas”, observa Chip al tiempo que mira la pantalla.“Sí”, le responde Anna. “Pensé que podríamos dividir el tiempo requerido para recopilar la informa-ción. También podemos dividir la tarea de analizar lo que aprendimos”.“Observé que tienes un número bastante extenso de días asignados para entrevistar a los usuarios”,comenta Chip.“Sí”, le responde Anna. “Esta actividad también incluye la creación de preguntas, ordenarlas en secuen-cia y otras tareas, como tomar notas del entorno de oficina y analizarlas. También supuse un estándar de seishoras productivas por día”.“Después de entrevistar a los usuarios será conveniente crear una definición del problema para el sis-tema, en donde se enlisten las cuestiones y objetivos”, continúa Anna. “Una vez terminada, haremos que losusuarios la revisen y asignen ponderaciones. Al terminar, el siguiente paso es crear una lista de requerimien-tos de los usuarios”.“Parece un buen plan”, contesta Chip después de una pausa reflexiva. “¿Deberíamos empezar con unalista de preguntas?”Anna mira su reloj. “Ahora no; se está haciendo tarde. Creo que hemos progresado mucho en cuanto aestablecer nuestro proyecto. Terminemos por este día, o ¿debería decir por esta tarde? Recuerda que conse-guí boletos para el juego de fútbol americano”.Chip responde: “No lo había olvidado. Voy por mi abrigo y caminaremos juntos al estadio”.Al caminar por el campus más tarde, Chip dice: “Estoy emocionado. Es mi primer juego aquí en laCPU. Por cierto ¿cuál es la mascota del equipo?”“Ardillas, por supuesto”, dice Anna.“¿Y los colores del equipo?” pregunta Chip al momento en que entran al estadio.“Azul y blanco”, le responde Anna.“Oh, entonces esa es la razón por la que todos gritan, ‘¡Vamos, Gran Azul!’” dice Chip, al escuchar elrugido de la multitud.“Exacto”, dice Anna.C, ,1A, 4B, 5E 2F, 4D, 6G, 15 I, 4H, 14 J, 3K, 15203010 50 60 80 9040 70A Recopilar informesB Recopilar registros y formularios de captura de datosC Recopilar documentos cualitativosD Analizar informesE Comprender la cultura de la organizaciónF Analizar registros y formulariosG Entrevistar a los usuariosH Administrar cuestionariosI Sintetizar las entrevistasJ Sintetizar los resultados de las encuestasK Sistema de prototiposFIGURA E3.1Un diagrama PERT para CentralPacific University que se utilizapara recopilar información.www.xlibros.com
CAPÍTULO 3 • ADMINISTRACIÓN DE PROYECTOS 101EJERCICIOSE-1. Use Microsoft Visio o Visible Analyst para ver el diagrama PERT de recopilación de información(Gathering Information).E-2. Haga una lista de todas las rutas; además calcule y determine la ruta crítica para el diagrama PERTde recopilación de información.E-3. Use Microsoft Visio o Visible Analyst para crear el diagrama PERT que se muestra en la figura E3.2. Estediagrama representa las actividades involucradas en las entrevistas a los usuarios y observar sus oficinas.A, 1 B, 1 C, 2 E, 3D, 18F, 4 G, 2H, 1I, 210 20 30 40 60708050Actividad simuladaABCDEFGHIEscribir objetivosDeterminar a quién entrevistarEscribir preguntasPreparar al entrevistadoEntrevistar a la administración superiorEntrevistar a la administración de operacionesRegistrar y analizar las observacionesSintetizar las entrevistas a la administraciónSintetizar las entrevistas al personal de operacionesFIGURA E3.2Un diagrama PERT para CentralPacific University que se utilizapara la fase de entrevistas a losusuarios.DuraciónPredecesorActividadDeterminar pantallas e informesdel prototipo generalDeterminar contenidos de informes y pantallasCrear prototipos de los informesCrear prototipos de las pantallasObtener retroalimentación de los prototipos delos informesObtener retroalimentación de los prototipos delas pantallasModificar prototipos de los informesModificar prototipos de las pantallasObtener la aprobación finalABCDEFGHINingunoABBCDEFG, H243412242FIGURA E3.3Una lista de actividades y tiemposde duración estimados para elproyecto de la CPU.E-4. Elabore una lista de todas las rutas; además calcule y determine la ruta crítica para el diagrama PERTde entrevistas a los usuarios (Interviewing Users).E-5. Use Visio o Visible Analyst para crear un diagrama PERT que genere prototipos de sistemas. La in-formación de actividades se muestra en la figura E3.3.E-6. Cree la definición del problema para el caso de la CPU. Lea la entrevista con Hy Perteks en el casode la CPU que se encuentra en el capítulo 4, así como las entrevistas en el sitio Web de soporte parael libro. Vaya a www.pearsonhighered.com/kendall y haga clic en el vínculo CPU Student Exercise(ejercicio de la CPU para estudiantes) para el libro de la 8va. edición. Después haga clic en el primervínculo llamado CPU Interviews (entrevistas de la CPU). Tendrá que leer las cinco entrevistas adi-cionales. Hay un vínculo Next (Siguiente) en la esquina inferior derecha de la página Web para pasara la siguiente entrevista.E-7. Escriba los requerimientos de los usuarios para el caso de la CPU.E-8. Diseñe un plan de prueba para los requerimientos creados en el ejercicio E-7.Los ejercicios en los que se antepone un icono www indican material de valor agregado disponible en el sitio Web www.pearsonhighered.com/kendall. Los estudiantes pueden descargar un archivo de muestra de Microsoft Visio, Visible Ana-lyst, Microsoft Project o Microsoft Access que pueden usar para completar los ejercicios.www.xlibros.com
www.xlibros.com
103C A P Í T U L O 4Recopilación de información:métodos interactivosOBJETIVOS DE APRENDIZAJEAl completar este capítulo usted podrá:1. Reconocer el valor de los métodos interactivos para recopilar información.2. Elaborar preguntas para conocer mediante entrevistas los requerimientos humanos deinformación.3. Estructurar las entrevistas de una manera significativa para los usuarios.4. Comprender el concepto de JAD y cuándo hay que usarlo.5. Redactar preguntas efectivas para entrevistar a los usuarios sobre su trabajo.6. Diseñar y administrar cuestionarios efectivos.Hay tres métodos interactivos clave que puede usar para obtener los requeri-mientos humanos de información de los miembros de la organización: entre-vistas, diseño de aplicaciones conjuntas (JAD) y encuestas aplicadas a laspersonas mediante cuestionarios. Aunque son distintos en su implementación,estos métodos tienen muchas cosas en común. La base de sus propiedadescompartidas es hablar con las personas en la organización y escucharlas para comprender sus in-teracciones con la tecnología, a través de una serie de preguntas cuidadosamente elaboradas.Cada uno de los tres métodos interactivos para recopilar información cuenta con su propioproceso establecido; usted debe seguirlo para interactuar con los usuarios. La observancia deestas metodologías sistemáticas ayudan a asegurar el diseño y la implementación apropiadosde las entrevistas, los talleres de trabajo de JAD y los cuestionarios; además respaldarán unanálisis lúcido de los datos resultantes. En un capítulo posterior veremos los métodos discretos(muestreo, investigación y observación del comportamiento del encargado de tomar las deci-siones junto con su entorno físico) que no requieren el mismo grado de interactividad entreanalistas y usuarios. El uso de métodos interactivos con métodos no discretos le permitirá ob-tener una descripción más completa de los requerimientos de información de la organización.P A R T E I IAnálisisde los requerimientosde informaciónENTREVISTASEs conveniente que se entreviste a usted mismo antes de hacerlo con alguien más. Necesitareconocer sus predisposiciones y la forma en que éstas afectarán a sus percepciones. Su educa-ción, intelecto, crianza, emociones y marco ético constituyen filtros relevantes para lo que ustedescuchará en sus entrevistas.Piense en el proceso completo de la entrevista antes de llevarla a cabo. Visualice por qué la hará,las preguntas que formulará y qué la convertirá en una entrevista exitosa de acuerdo con su criterio.Además debe planear cómo hacer de la entrevista un suceso satisfactorio para el entrevistado.Una entrevista para recopilar información es una conversación dirigida con un propósitoespecífico, en la cual se usa un formato de preguntas y respuestas. En la entrevista hay que ob-tener las opiniones del entrevistado y lo que siente sobre el estado actual del sistema, los obje-tivos de la organización y los personales, y los procedimientos informales para interactuar conlas tecnologías de la información.www.xlibros.com
104 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓN1. Leer el material sobre los antecedentes.2. Establecer los objetivos de la entrevista.3. Decidir a quién entrevistar.4. Preparar al entrevistado.5. Decidir sobre los tipos de preguntas y su estructura.Pasos para planear la entrevistaFIGURA 4.1Pasos que debe seguir el analistade sistemas para planear laentrevista.Sobre todo busque las opiniones del entrevistado. Éstas pueden ser más importantes y reveladoras que loshechos. Por ejemplo, suponga que pregunta a la propietaria de una tienda convencional, quien acaba de instau-rar una tienda en línea, cuántos clientes piden comúnmente el reembolso de sus transacciones vía Web cadasemana. Ella le responde: “Entre 20 y 25 por semana”. Cuando usted supervisa las transacciones y descubreque el promedio es de sólo 10.5 por semana, tal vez concluya que la propietaria está exagerando los hechos yel problema.Ahora imagine que en vez de lo anterior pregunta a la propietaria cuáles son sus principales preocupacionesy ella le contesta: “En mi opinión, las devoluciones de los clientes que compran artículos a través del sitio Webson demasiado altas”. Al buscar opiniones en vez de hechos, descubrió un problema clave que la propietaria de-sea solucionar.Además de las opiniones hay que tratar de capturar los sentimientos del entrevistado. Recuerde que ésteconoce mejor la organización que usted. Para que usted pueda entender mejor la cultura de organización debeescuchar los sentimientos del que responde a la entrevista.Los objetivos son información importante que podemos obtener de las entrevistas. Los datos “duros” puedenexplicar el desempeño en el pasado, pero los objetivos proyectan el futuro de la organización. Trate de averiguara través de las entrevistas la mayor cantidad posible de objetivos de la organización, pues tal vez no pueda deter-minarlos mediante los otros métodos de recopilación de datos.La entrevista también es un valioso momento para explorar las cuestiones sobre HCI (interacción humano-computadora), incluyendo los aspectos ergonómicos, la capacidad de uso del sistema, qué tan placentero y diver-tido es el sistema, y qué tan útil es para apoyar las tareas individuales.En la entrevista debemos establecer una relación con un extraño. Hay que generar confianza y compren-sión rápidamente y, al mismo tiempo, mantener el control de la entrevista. También necesitamos vender elsistema, para lo cual hay que proveer información necesaria al entrevistado. Planear previamente la entrevistale facilitará dirigirla. Por fortuna podemos aprender a realizar entrevistas en forma efectiva. A medida quepractique, usted mismo podrá ver cómo va mejorando. Más adelante en el capítulo hablaremos sobre el diseñode aplicaciones conjuntas (JAD), que nos puede servir como alternativa a las entrevistas cara a cara en ciertassituaciones.Los cinco pasos para la preparación de una entrevistaEn la figura 4.1 se muestran los cinco pasos principales en la preparación para una entrevista; incluyen activida-des que van desde recopilar material sobre antecedentes básicos hasta decidir a quién vamos a entrevistar.ENTÉRESE DE LOS ANTECEDENTES Lea y comprenda todo lo que pueda sobre los antecedentes de los entrevistadosy la organización. El sitio Web corporativo, un informe anual actualizado, un boletín de noticias corporativo ocualquier publicación que se emita para explicar el funcionamiento de la empresa al público son fuentes útiles deinformación. Puede revisar en Internet cualquier información corporativa, como la que se encuentra en Standardand Poor’s.En esta fase de investigación ponga especial atención al lenguaje utilizado por los integrantes corporativospara describirse a sí mismos y a la compañía. Trate de recopilar un vocabulario común que le permita expresarpreguntas de forma que sus entrevistados puedan comprender inmediatamente. Otro beneficio de investigar laorganización es aprovechar al máximo el tiempo invertido en las entrevistas, al no tener que hacer preguntas ge-nerales sobre antecedentes.ESTABLEZCA LOS OBJETIVOS DE LA ENTREVISTA Defina los objetivos de la entrevista a partir de los antecedentesinvestigados y de su propia experiencia. Debe haber de cuatro a seis áreas clave concernientes a HCI, elprocesamiento de información y el comportamiento de los encargados de tomar las decisiones, sobre lo cual seráconveniente interrogar. Estas áreas incluyen cuestiones sobre HCI (la utilidad y capacidad de uso del sistema,cómo se ajusta a los aspectos físicos, cómo se adapta a las capacidades cognitivas de un usuario, si es interesantewww.xlibros.com
CAPÍTULO 4 • RECOPILACIÓN DE INFORMACIÓN: MÉTODOS INTERACTIVOS 105Preguntas abiertas en las entrevistas• ¿Qué opina sobre el estado actual del comercio electrónico de negocio anegocio en su empresa?• ¿Cuáles son los objetivos críticos de su departamento?• Una vez que se envían los datos a través del sitio Web, ¿cómo se procesan?• Describa el proceso de monitoreo disponible en línea.• ¿Cuáles son algunos de los errores comunes al introducir datos que secometen en este departamento?• ¿Cuáles son las mayores frustraciones que ha experimentado durante latransición al comercio electrónico?FIGURA 4.2Las preguntas abiertas en lasentrevistas ofrecen opcionesabiertas para que el entrevistadoresponda. Los ejemplos seseleccionaron de distintasentrevistas y no se muestran enningún orden específico.o estéticamente atractivo, y si al utilizar el sistema se obtienen o no las consecuencias deseadas), fuentes deinformación, formatos de información, frecuencia de la toma de decisiones, calidades de la información y elestilo de la toma de decisiones.DECIDA A QUIÉN ENTREVISTAR Incluya personas clave de todos los niveles que se vean afectados por el sistemaen cierta forma. Trate de que la muestra sea representativa para indagar sobre la mayor cantidad posible denecesidades de usuario. Su contacto de la organización también le puede dar ideas sobre las personas que debeentrevistar.PREPARE AL ENTREVISTADO Para preparar a la persona que va a entrevistar, llame por teléfono o envíe unmensaje de correo electrónico con anticipación, de manera que el entrevistado esté preparado; si la entrevista esmuy detallada, envíe previamente el cuestionario por correo electrónico para que el entrevistado pueda pensaren sus respuestas. En todo caso, como hay que cumplir muchos objetivos en la entrevista (como crear confianzay observar el lugar de trabajo), las entrevistas se deben realizar por lo general en persona y no a través decorreo electrónico. Deben durar de 45 minutos a 1 hora como máximo. Sin importar cuánto se quieran extenderlos entrevistados más allá de ese límite, recuerde que cuando invierten tiempo con usted no están haciendosu trabajo. Si las entrevistas exceden de una hora, es probable que los entrevistados resientan la intrusión,independientemente de si se lo hacen saber o no.DECIDA SOBRE LOS TIPOS DE PREGUNTAS Y SU ESTRUCTURA Redacte preguntas para cubrir las áreas clave dela HCI y el proceso de toma de decisiones que haya descubierto al momento de determinar los objetivos de laentrevista. Las técnicas de interrogación apropiadas son la base de la entrevista. Las preguntas tienen ciertasformas básicas que necesitamos conocer. Los dos tipos básicos de preguntas son abiertas y cerradas. Cada tipode pregunta puede lograr algo ligeramente distinto que los otros, y cada uno tiene sus beneficios y desventajas.Debe pensar sobre el efecto que cada tipo de pregunta tendrá.Es posible estructurar la entrevista en tres patrones: estructura de pirámide, estructura de embudo o estruc-tura de diamante. Cada estructura es apropiada bajo distintas condiciones y sirve a un propósito diferente; habla-remos sobre cada una de ellas más adelante en este capítulo.Tipos de preguntasPREGUNTAS ABIERTAS Las preguntas abiertas son del tipo: “¿Qué piensa en cuanto a poner a todos losgerentes en una intranet?”, “Por favor explique cómo toma una decisión sobre la programación de tiemposy fechas.”, “¿En qué formas extiende el sistema su capacidad de realizar tareas que no sería posible realizarmediante algún otro medio?”. Abiertas describe las opciones que tiene el entrevistado para responder. Larespuesta puede constar de dos palabras o de dos párrafos. En la figura 4.2 se muestran algunos ejemplos depreguntas abiertas.Los beneficios de utilizar preguntas abiertas son muchos, entre los cuales tenemos:1. El entrevistado baja la guardia.2. El entrevistador puede percibir el vocabulario del entrevistado, lo cual refleja su educación, valores, posturasy creencias.3. Se proveen muchos detalles.4. Se descubren vías de cuestionamiento adicionales que de otra manera no se hubieran explotado.5. El entrevistado encuentra el proceso más interesante.6. Se permite una mayor espontaneidad.www.xlibros.com
106 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNPreguntas bipolares en entrevistas• ¿Usa la Web para proveer información a los distribuidores?• ¿Está de acuerdo o en desacuerdo en cuanto a que el comercioelectrónico en Web carece de seguridad?• ¿Desea recibir un documento impreso de su estado de cuenta cada mes?• ¿Mantiene su sitio Web una página de preguntas frecuentes (FAQ) paralos empleados con preguntas sobre su nómina?• ¿Está completo este formulario?FIGURA 4.4Las preguntas bipolares en lasentrevistas son un tipo especial depregunta cerrada. Los ejemplos seseleccionaron de distintasentrevistas y no se muestran enningún orden específico.Preguntas cerradas en entrevistas• ¿Cuántas veces por semana se actualiza el repositorio del proyecto?• En promedio, ¿cuántas llamadas recibe el centro de atención al mes?• ¿Cuál de las siguientes fuentes de información es más valiosa para usted?° Formularios completos de quejas de los clientes° Quejas por correo electrónico de los consumidores que visitan el sitio Web° Interacción cara a cara con los clientes° Mercancía devuelta• Enliste sus dos principales prioridades para mejorar la infraestructura de tecnología.• ¿Quién recibe esta entrada?FIGURA 4.3Las preguntas cerradas en lasentrevistas limitan las opciones delque responde. Los ejemplos seseleccionaron de distintasentrevistas y no se muestran enningún orden específico.7. El entrevistador puede expresar mejor las preguntas.8. El entrevistador puede recurrir a ellas en caso de que tenga que improvisar.Como puede ver, hay varias ventajas en cuanto al uso de preguntas abiertas. Sin embargo, también hay muchasdesventajas:1. Las preguntas pueden generar muchos detalles irrelevantes.2. Se puede llegar a perder el control de la entrevista.3. Se permiten respuestas que pueden requerir demasiado tiempo debido a la cantidad obtenida de informaciónútil.4. Podría parecer que el entrevistador no está preparado.5. Puede darse la impresión de que el entrevistador “anda de pesca”, sin objetivos bien definidos.Debe considerar con cuidado las implicaciones de usar preguntas abiertas en las entrevistas.PREGUNTAS CERRADAS La otra alternativa la constituyen las preguntas cerradas; asumen las formas básicas “¿Esfácil usar el sistema actual?” y “¿Cuántos subordinados tiene a su cargo?”. Las posibles respuestas son cerradaspara el entrevistado, debido a que sólo puede responder con un número finito tal como “Ninguna”, “Una” o“Quince”. En la figura 4.3 se muestran ejemplos de preguntas cerradas.Una pregunta cerrada limita el entrevistado la respuesta disponible. Tal vez usted esté familiarizado con laspreguntas cerradas debido a los exámenes de opción múltiple de la universidad. Se le proporciona una pregunta ycinco respuestas, y no puede anotar una respuesta propia ya que se considerará equivocada.Hay un tipo especial de pregunta cerrada: la pregunta bipolar. Este tipo de pregunta limita incluso más alentrevistado, ya que sólo le permite elegir uno de dos polos, como sí o no, verdadero o falso, de acuerdo o endesacuerdo. En la figura 4.4 se muestran ejemplos de preguntas bipolares.Los beneficios de usar preguntas cerradas de cualquier tipo incluyen:1. Ahorro de tiempo.2. Se pueden comparar las entrevistas con facilidad.3. Van directo al grano.4. Se mantiene el control sobre la entrevista.5. Se cubre mucho terreno con rapidez.6. Se obtienen datos relevantes.www.xlibros.com
CAPÍTULO 4 • RECOPILACIÓN DE INFORMACIÓN: MÉTODOS INTERACTIVOS 107Sin embargo, las desventajas de usar preguntas cerradas son substanciales. Entre las más comunes tenemos:1. Son aburridas para el entrevistado.2. No proporcionan detalles adicionales (debido a que el entrevistador provee el marco de referencia para elentrevistado).3. Se pierden las ideas principales por la razón anterior.4. No se puede generar una buena comunicación entre el entrevistador y el entrevistado.Por lo tanto, como entrevistador usted debe considerar con cuidado los tipos de preguntas que piensa utilizar.Tanto las preguntas abiertas como las cerradas tienen ventajas y desventajas, como se muestra en la figura4.5. Tenga en cuenta que se deben hacer ciertas concesiones al elegir un tipo de respuesta en vez del otro; aunqueuna pregunta abierta ofrece amplitud y profundidad en la respuesta, este tipo de respuestas son más difíciles deanalizar.SONDEOS El tercer tipo de pregunta es el sondeo o seguimiento. El sondeo más sólido es el más simple: lapregunta “¿Por qué?”. Otros sondeos son: “¿Me puede dar un ejemplo de un momento en el que el sistema nole haya parecido confiable?” y “¿Podría explicarme eso?”. En la figura 4.6 se muestran ejemplos de preguntasde sondeo. El propósito del sondeo es ir más allá de la respuesta inicial para obtener más detalles significativos,aclarar la información, y ampliar el punto del entrevistado. Los sondeos pueden ser preguntas abiertas ocerradas.Es imprescindible realizar sondeos. La mayoría de los entrevistadores principiantes son reticentes en cuantoa realizar sondeos y con frecuencia aceptan respuestas superficiales. Por lo general están más agradecidos por elhecho de que los entrevistados hayan concedido las entrevistas y se sienten en parte obligados a aceptar declara-ciones sin argumentos con amabilidad.Ordenar las preguntas en una secuencia lógicaAsí como hay dos formas generalmente reconocidas de razonamiento (inductivo y deductivo), también hay dosformas similares de organizar las entrevistas. Además existe una tercera forma que combina los patrones induc-tivo y deductivo.CerradasAbiertasBajoBajoBajoMuchaMuchaDifícilAltoAltoAltoPocaPocaFácilFacilidad de análisisConfiabilidad de los datosUso eficiente del tiempoPrecisión de los datosAmplitud y profundidadSe requiere habilidad del entrevistadorFIGURA 4.5Atributos de las preguntas abiertasy las preguntas cerradas.Sondeos¿Por qué?Mencione un ejemplo de cómo se ha integrado el comercio electrónico ensus procesos de negocios.Ilustre el tipo de problemas de seguridad que experimenta con su sistemade pagos de facturas en línea.Mencionó una solución tanto de intranet como de extranet. Por favor muestreun ejemplo de la forma en que piensa que difiere cada una de estas soluciones.¿Qué lo hace sentir así?Dígame paso a paso qué ocurre después de que un cliente hace clic en elbotón “Enviar” en el formulario de registro Web.FIGURA 4.6Los sondeos permiten al analistade sistemas dar seguimiento a laspreguntas para obtener respuestasmás detalladas. Los ejemplos seseleccionaron de distintasentrevistas y no se muestran enningún orden específico.www.xlibros.com
108 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNUSO DE UNA ESTRUCTURA DE PIRÁMIDE La organización inductiva de las preguntas de la entrevista se puedevisualizar en forma de pirámide. El entrevistador empieza con preguntas muy detalladas, a menudo cerradas. Despuésexpande los temas al permitir preguntas abiertas y respuestas más generalizadas, como se muestra en la figura 4.7.Utilice una estructura de pirámide si cree que su entrevistado necesita entrar en calor en cuanto al tema.También es conveniente usar una estructura de pirámide para las secuencias de preguntas si desea una determina-¿Cuál esel problemaespecífico que estáexperimentandocon su firewall?¿Ha considerado otrosmétodos para mejorar la seguridadde los datos corporativos?De acuerdo con su punto de vista,¿qué mejoraría la efectividad de la seguridad aquí?En general, ¿cómo se siente en cuanto a la seguridad de losdatos en comparación con la importancia del acceso a Internet?Las estructurasde pirámide empiezancon una preguntaespecífica...... y terminan conuna preguntageneral.FIGURA 4.7La estructura de pirámide para lasentrevistas pasa de preguntasespecíficas a generales.O P O R T U N I D A D D E C O N S U L T O R Í A 4 . 1Fortalezca sus tipos de preguntasStrongbodies, una enorme cadena local de clubes deportivos, haexperimentado un crecimiento fenomenal en los últimos cinco años.A la gerencia le gustaría refinar su proceso de toma de decisionespara comprar nuevo equipo de fisicoculturismo. En la actualidad,los gerentes escuchan a los clientes, asisten a exposiciones, venanuncios publicitarios y solicitan la compra de nuevos equipos conbase en sus percepciones subjetivas. Después, Harry Mussels seencarga de aprobar o rechazar estas solicitudes.Harry es la primera persona a quien entrevistará. Es un gerentede división de 37 años que dirige cinco clubes en el área. Viaja portoda la ciudad para visitar sus ubicaciones esparcidas ampliamente.Tiene una oficina en la ubicación este, aunque está ahí menos de unacuarta parte del tiempo.Además, cuando Harry se encuentra en un club está ocu-pado contestando llamadas telefónicas relacionadas con los ne-gocios, resolviendo problemas inmediatos que le presentan losgerentes e interactuando con los miembros del club. Cuenta conpoco tiempo y, para compensar, se ha convertido en un gerentedivisional en extremo organizado y eficiente. No le puede con-ceder mucho tiempo en la entrevista. Pero su aportación es im-portante y siente que sería el principal beneficiario del sistemapropuesto.¿Qué tipo de pregunta sería el más adecuado para su entre-vista con Harry? ¿Por qué sería el tipo más apropiado? ¿Cómoafectará el tipo de pregunta que usted seleccione en la cantidad detiempo que invertirá en su preparación para entrevistar a Harry?Escriba de 5 a 10 preguntas de este tipo. ¿Qué otras técnicas po-dría utilizar para complementar la información que no esté dispo-nible por medio de ese tipo de pregunta? Escriba un párrafo paraexplicar.www.xlibros.com
CAPÍTULO 4 • RECOPILACIÓN DE INFORMACIÓN: MÉTODOS INTERACTIVOS 109ción final sobre el tema. Tal es el caso en la pregunta final: “En general, ¿cómo se siente en cuanto a la seguridadde los datos en comparación con la importancia del acceso a Internet?”.USO DE UNA ESTRUCTURA DE EMBUDO En el segundo tipo de estructura, el entrevistador usa un enfoquedeductivo al empezar con preguntas generalizadas y abiertas, para después reducir la cantidad de respuestasposibles mediante el uso de preguntas cerradas. Esta estructura de entrevista se puede representar en formade embudo, como se muestra en la figura 4.8. El método de la estructura de embudo ofrece una manera fácily amigable de empezar una entrevista. También es conveniente usar una secuencia de preguntas en forma deembudo cuando el entrevistado está relacionado sentimentalmente con el tema y necesita libertad para expresaresos sentimientos.USO DE UNA ESTRUCTURA EN FORMA DE DIAMANTE A menudo es mejor utilizar una combinación de lasdos estructuras anteriores, a lo cual se le conoce como estructura de entrevista en forma de diamante. En estaestructura la entrevista empieza de una manera muy específica y después se examinan las cuestiones generales,para finalmente llegar a una conclusión muy particularizada, como se muestra en la figura 4.9.El entrevistador empieza con preguntas fáciles y cerradas que permiten al entrevistado entrar en calor; ala mitad se le pregunta lo que opina sobre temas amplios que obviamente no tienen sólo una respuesta “co-rrecta”. Después, el entrevistador restringe incluso más las preguntas para obtener respuestas específicas, conlo cual se produce un cierre tanto para el entrevistado como para el entrevistador. La estructura de diamantecombina las ventajas de los otros dos métodos pero tiene la desventaja de que toma más tiempo que las otrasdos estructuras.El final de la entrevista parecería un punto lógico para hacer una pregunta clave —“¿Hay algo de lo que nohayamos hablado que usted considere importante?”—, pero como el entrevistado la considera una pregunta defórmula, la mayor parte de las ocasiones la respuesta será “No”. Por ende, usted debe identificar las coyunturasen que esta pregunta pueda soltarle la lengua al entrevistado.Al concluir la entrevista, haga un resumen y provea retroalimentación sobre sus impresiones en general. In-forme al entrevistado sobre los pasos a seguir, y lo que harán usted y los demás miembros del equipo a continua-ción. Pregunte al entrevistado con quién debería usted hablar en adelante. Establezca citas para dar seguimiento alas entrevistas, agradezca al entrevistado por su tiempo y despídase de mano.Cómo escribir el informe de la entrevistaAunque la entrevista esté completa, apenas empieza su trabajo sobre los datos que obtuvo. Necesita capturar laesencia de la entrevista por medio de un informe escrito. Es imperativo que escriba el informe tan pronto comosea posible después de la entrevista. Este paso es otra manera en la que puede asegurar la calidad de los datosobtenidos de la entrevista: entre más tiempo espere para escribir su entrevista, más borrosa se volverá la calidadde sus datos.¿Qué artículos se podrán compraren el sitio Web?¿Cuáles son sus reacciones en cuanto al nuevosistema de adquisiciones basado en Web?¿Hay algún artículo esencialque se haya excluidodel sitio?Las estructuras deembudo empiezancon una preguntageneral ...... y terminan conuna preguntaespecífica.¿ Q u é d e p a r t a m e n t o s e s t á n i n v o l u c r a d o s e n s ui m p l e m e n t a c i ó n ?FIGURA 4.8La estructura de embudo para lasentrevistas empieza con preguntasamplias y después se restringe apreguntas específicas.www.xlibros.com
110 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNO P O R T U N I D A D D E C O N S U L T O R Í A 4 . 2Un vistazo a la superficieEstá a punto de salir de la lechería SureCheck Dairy, después deun recorrido preliminar, cuando otro miembro de su equipo de aná-lisis de sistemas le llama para decirle que, por enfermedad, no podrápresentarse para entrevistar al gerente de la planta, como lo habíaconvenido. El gerente es una persona muy ocupada y usted deseamantener su entusiasmo por el proyecto haciendo las cosas según loplaneado. También se da cuenta de que sin los datos de la entrevistainicial, se atrasará el resto del proceso de recopilación de datos.Aunque no tiene preparadas las preguntas para la entrevista, decideir y entrevistar al gerente de la planta en el acto.Lo que usted ha aprendido sobre SureCheck es que están inte-resados en procesar sus propios datos sobre las cantidades y tiposde productos lácteos que se venden, de manera que el personalpueda utilizar esa información para controlar mejor la producciónde la extensa línea de productos de la empresa (leche entera, descre-mada, con 1% de grasa, con 2% de grasa, mitad y mitad, quesocottage, yogurt y productos congelados novedosos). En la actuali-dad, los gerentes de ventas envían sus cifras a las oficinas generales,situadas a 600 millas, y el ciclo de procesamiento de las mismas seve lento. Usted basará sus preguntas improvisadas en lo que acabade descubrir en el recorrido.Durante los pocos minutos que quedan antes de la hora de laentrevista, decida la estructura que utilizará (de embudo, de pirá-mide o de diamante). Justifique en un párrafo su elección conside-rando las inesperadas condiciones. Escriba una serie de preguntas yorganícelas en la estructura que eligió.¿Cuáles sonlos cinco tipos deinformación que rastrea elservicio gratuito de uso desitios Web que usted utiliza?¿Cuáles son las actividades promocionales queusted ofrece en su sitio a cambio de este servicio?¿Cuál es el valor de la información sobre el uso desu sitio Web para usted como webmaster?¿Cuáles son dos puntos sorprendentes en relación con elcomportamiento de los usuarios en su sitio que hayadescubierto mediante el uso de este servicio?¿Son los “cookies” una mejorforma de medir la forma enque los usuarios finalesutilizan el sitio?Las estructurasde diamanteempiezan con unapregunta específica ...... pasan apreguntasgenerales ...... y terminan conuna preguntaespecífica.FIGURA 4.9La estructura en forma dediamante para las entrevistascombina las estructuras depirámide y de embudo.Después de este resumen inicial, elabore otro más detallado donde exprese los puntos principales de la en-trevista y sus propias opiniones. Revise el informe con el entrevistado en una reunión de seguimiento. Este pasoayuda a aclarar el significado que tenía el entrevistado en mente y le hace saber que usted tiene el suficiente inte-rés como para tomarse el tiempo de comprender su punto de vista y sus percepciones.www.xlibros.com
CAPÍTULO 4 • RECOPILACIÓN DE INFORMACIÓN: MÉTODOS INTERACTIVOS 111DISEÑO DE APLICACIÓN CONJUNTASin importar qué tan experto se vuelva como entrevistador, se cruzará con situaciones en las que las entre-vistas cara a cara no resulten tan convenientes como esperaba. Las entrevistas personales consumen tiempoy son propensas a errores, por lo cual sus datos se pueden malinterpretar. IBM desarrolló una metodologíaalternativa para entrevistar a los usuarios uno a uno, conocida como diseño de aplicación conjunta (JAD).Los motivos para usar JAD son reducir el tiempo (y por ende el costo) requerido por las entrevistas perso-nales, mejorar la calidad de los resultados de la evaluación de los requerimientos de información y mejorarel grado de identificación del usuario con los nuevos sistemas de información como resultado de los proce-sos participativos.Aunque JAD se puede sustituir por las entrevistas personales en cualquier momento apropiado duranteel SDLC, por lo general se emplea como técnica que le permite a usted, como analista de sistemas, realizar elanálisis de requerimientos y diseñar la interfaz de usuario en forma conjunta con los usuarios, en un ambientede grupo. Las diversas complejidades de esta metodología se pueden aprender sólo en un seminario pagadoen el que se demuestren métodos propietarios. No obstante, aquí proporcionamos orientación suficiente paraque usted conozca algunos de sus beneficios y desventajas en comparación con las entrevistas cara a cara.Condiciones que respaldan el uso de JADLa siguiente lista de condiciones le ayudará a decidir cuándo puede ser fructífero el uso de JAD. Considere eluso del diseño de aplicación conjunta cuando:1. Los grupos de usuarios estén inquietos y deseen algo nuevo, no una solución estándar para un problemacomún.2. La cultura de la organización apoya los comportamientos de solución de problemas conjuntos entre variosniveles de empleados.3. Los analistas pronostican que la cantidad de ideas generadas mediante las entrevistas cara a cara no será tanabundante como el número de ideas posibles mediante un ejercicio de grupo extendido.4. El flujo de trabajo permita la ausencia del personal clave durante un periodo de dos a cuatro días.¿Quién está involucrado?Las sesiones de diseño de aplicaciones conjuntas incluyen a varios participantes (analistas, usuarios, ejecutivos,etcétera), quienes aportarán sus distintos antecedentes y capacidades. Su principal preocupación aquí es que to-dos los miembros del equipo del proyecto se comprometan con la metodología JAD. Seleccione un patrocinadorejecutivo, algún superior que introduzca y concluya la sesión JAD. De preferencia seleccione un ejecutivo delgrupo de usuarios que tenga cierto tipo de autoridad sobre el personal de sistemas de información implicado enel proyecto. Esta persona será un símbolo importante y visible del compromiso de la organización con el pro-yecto de sistemas.Debe haber por lo menos un analista de sistemas de información presente, aunque por lo general asume unrol pasivo, a diferencia de las entrevistas tradicionales, donde el analista controla la interacción. Como analistadel proyecto, usted debería estar presente durante el JAD para escuchar qué dicen los usuarios y qué requieren.Además podría ser necesaria su opinión experta sobre costos desproporcionados de posibles soluciones propues-tas durante la sesión. Sin este tipo de retroalimentación inmediata, pueden surgir soluciones irreales con costosexcesivos en la propuesta, que serán difíciles de descartar más adelante.Puede elegir de ocho a doce usuarios de cualquier rango para que participen en las sesiones JAD. Trate deseleccionar a los que puedan articular la información que necesitan para realizar sus trabajos, así como lo quedesean en un sistema de cómputo nuevo o mejorado.El líder de la sesión no debe ser un experto en el análisis y diseño de sistemas, sino alguien con excelenteshabilidades de comunicación como para poder facilitar las interacciones apropiadas. Tenga en cuenta que nole conviene usar un líder de sesión que se reporte con otra persona en el grupo. Para evitar que esto ocurra, talvez la organización esté de acuerdo en retener un consultor administrativo externo para que actúe como líder desesión. El objetivo es contar con alguien que pueda atraer la atención del grupo para tratar con las cuestionesimportantes de sistemas, negociar y resolver conflictos en forma satisfactoria y ayudar a que los miembros delgrupo lleguen a un consenso.Su sesión JAD también debe incluir uno o dos observadores que sean analistas o expertos técnicos de otrasáreas funcionales para ofrecer explicaciones técnicas y consejos al grupo durante las sesiones. Además debe ha-ber un escriba del departamento de sistemas de información en las sesiones JAD para escribir formalmente todolo que se haga.www.xlibros.com
112 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNE X P E R I E N C I A D E H Y P E R C A S E ® 4 . 1“Bueno, le advertí que no siempre estaba todo tranquilo aquí enMRE. Seguramente ya habrá conocido a muchos de nuestros em-pleados clave y está empezando a comprender cómo son realmentelas cosas. ¿Quién hubiera pensado que unas inocentes decisionessobre sistemas, como en dónde comprar un COMTEX o Shiroma,crearían tanta hostilidad? Bueno, vivir y aprender, es lo que siempredigo. ¡Por lo menos ahora sabrá a lo que se enfrenta cuando tengaque empezar a recomendar software y hardware!”.“Es curioso: hay de preguntas a preguntas. Yo mismo estoy afavor de las preguntas abiertas, pero cuando tengo que responderlas,no siempre es fácil”.Preguntas de HYPERCASE1. Use las preguntas de entrevistas que se plantean en HyperCasepara dar cinco ejemplos de preguntas abiertas y cinco ejemplos depreguntas cerradas. Explique por qué sus ejemplos se clasificancorrectamente como tipos de preguntas abiertas o cerradas.2. Mencione tres preguntas de sondeo que sean parte de laentrevista a Daniel Hill. En especial, ¿qué aprendió al darseguimiento a las preguntas que hizo a Daniel?3. Mencione tres preguntas de sondeo que sean parte de laentrevista a Snowden Evans. En especial, ¿qué aprendió aldar seguimiento a las preguntas que hizo a Snowden?FIGURA 4.HC1Al colocar el puntero en una pregunta de HyperCase se revelará una respuesta.Ubicación de las reuniones JADLe recomendamos que, de ser posible, realice las sesiones fuera del sitio con una duración de dos a cuatro díasfuera del sitio, lejos de la organización, en un ambiente cómodo. Algunos grupos utilizan centros ejecutivos oincluso instalaciones de soporte de decisiones en grupo disponibles en las principales universidades. La idea esminimizar las distracciones y responsabilidades diarias del trabajo regular de los participantes. La sala debe alo-jar cómodamente a las personas invitadas. El equipo mínimo para apoyar la presentación incluye dos proyectores(apropiados para los materiales a presentar: acetatos, presentaciones electrónicas, hojas impresas, etcétera), unpizarrón blanco, un rotafolios y acceso a una copiadora. Las salas de soporte de decisiones en grupo tambiénproporcionan PC en red, un sistema de proyección y software escrito para facilitar la interacción en grupo, altiempo que se minimizan los comportamientos en grupo improductivos.Programe su sesión JAD cuando todos los participantes se puedan comprometer a asistir. No lleve a cabo lassesiones a menos que realmente puedan asistir todos los convocados. Esta regla es imprescindible para el éxitode las sesiones. Asegúrese de que todos los participantes reciban una agenda antes de la reunión y considere lle-www.xlibros.com
CAPÍTULO 4 • RECOPILACIÓN DE INFORMACIÓN: MÉTODOS INTERACTIVOS 113var a cabo una reunión de orientación de medio día, cuando menos una semana antes del taller para que los queestén involucrados sepan lo que se espera de ellos. Dicha reunión previa le permitirá avanzar con rapidez y actuarcon confianza una vez que se convoque la verdadera reunión.Obtención de un análisis estructurado de las actividades del proyectoIBM recomienda que las sesiones JAD examinen estos puntos en el proyecto de sistemas propuesto: planeación,recepción, procesamiento/rastreo de recibos, monitoreo y asignación, procesamiento, registro, envío y evalua-ción. Para cada tema también hay que formular y responder las preguntas quién, qué, cómo, dónde y por qué. Endefinitiva, los sistemas interactivos ad hoc, como los sistemas de soporte de decisiones y otros tipos de sistemasdependientes del estilo del encargado de tomar las decisiones (incluyendo los sistemas de prototipos), no se ana-lizan con tanta facilidad con la metodología estructurada de JAD.Como analista involucrado con las sesiones JAD, usted debe consultar las notas, que alguien designado tomedurante la reunión, para preparar un documento de especificaciones con base en lo que ocurrió en ella. Presenteen forma sistemática los objetivos de la administración, así como el alcance y los límites del proyecto. Incluyatambién los aspectos específicos del sistema, como los detalles en pantalla y los esquemas de los informes.Beneficios potenciales al usar JAD en vez de las entrevistas tradicionalesExisten cuatro beneficios potenciales que usted, los usuarios y su equipo de análisis de sistemas deben tener en con-sideración al sopesar las posibilidades de usar el diseño de aplicación conjunta. El primer beneficio potencial es elahorro de tiempo en comparación con las entrevistas tradicionales cara a cara. Algunas organizaciones han estimadoque las sesiones JAD permiten ahorrar el 15 por ciento del tiempo en comparación con el método tradicional.Además del ahorro en tiempo es posible efectuar un desarrollo rápido a través de JAD: como las entrevistasa los usuarios no se llevan a cabo en forma serial durante un periodo de semanas o meses, el desarrollo puedeavanzar con mayor rapidez.Un tercer beneficio a considerar es la posibilidad de mejorar la posesión del sistema de información. Comoanalistas, nos esforzamos siempre en involucrar a los usuarios de manera significativa y los alentamos a quetomen posesión de los sistemas diseñados lo antes posible. Debido a su naturaleza interactiva y alto grado devisibilidad, JAD ayuda a los usuarios a que se involucren lo más pronto posible en los proyectos de sistemas yconsidera seriamente su retroalimentación. La participación en una sesión JAD ayuda en un momento dado a re-flejar las ideas del usuario en el diseño final.Un beneficio final de participar en las sesiones JAD es el desarrollo creativo de los diseños. El carácter in-teractivo de JAD tiene mucho en común con las técnicas de lluvias de ideas que generan nuevas propuestas ycombinaciones entre ellas, debido al entorno dinámico y estimulante. Los diseños pueden evolucionar a través deinteracciones facilitadas, en vez de hacerlo en un aislamiento relativo.Desventajas potenciales de JADHay tres desventajas u obstáculos que también debemos sopesar al decidir si usaremos las entrevistas conven-cionales o JAD. La primera desventaja es que JAD requiere que todos los participantes comprometan muchotiempo. Como JAD requiere su dedicación durante un periodo de dos a cuatro días, no es posible realizar nin-O P O R T U N I D A D D E C O N S U L T O R Í A 4 . 3Analista de sistemas, supongo“¿Sabe qué pienso del trabajo del último equipo de análisis desistemas? Los documentos impresos que crearon son una jungla.Para averiguar el costo de la materia prima para nosotros, tengo queabrirme paso a golpe de pluma por el exceso de datos. Voy tachandotodo lo irrelevante y algunas veces tengo que arrancar demasiadamaleza para llegar a las cifras que necesito”, dice Henry Stanley,supervisor de contabilidad para Zenith Glass Company, mientrasapunta descontento hacia una desordenada pila de documentos im-presos mutilados que brotan a un lado de su escritorio.Identifique la metáfora primordial que utiliza Henry para des-cribir los documentos impresos que recibe, además de la accesibili-dad a la información en ellos. Describa en un párrafo cómo le puedeayudar este paso a comprender la postura de Henry en relación concualquier trabajo propuesto por su equipo de análisis de sistemas.En un párrafo, adopte la metáfora de Henry y extiéndala en un sen-tido más positivo durante su entrevista con él.www.xlibros.com
114 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNguna otra actividad en forma concurrente ni postergar actividades, como se realiza comúnmente en las entrevistascara a cara.El segundo obstáculo se produce cuando la preparación para las sesiones JAD es inadecuada en cualquier as-pecto, o si el informe de seguimiento y la documentación de las especificaciones están incompletos. En estos ca-sos, los diseños resultantes podrían ser insatisfactorios. Es necesaria la conjunción de muchas variables correctaspara que el JAD sea exitoso; en contraste, muchas cosas podrían salir mal. El éxito de los diseños que resultan delas sesiones JAD es menos predecible que el que se logra mediante las entrevistas estándar.Por último, tal vez las habilidades necesarias de la organización y su cultura no estén lo bastante desarrolla-das como para permitir el esfuerzo concertado requerido para ser productivos en un entorno JAD. Al final tendráque juzgar si la organización realmente está comprometida y preparada para esta metodología.USO DE CUESTIONARIOSEl uso de cuestionarios es una técnica de recopilación de información que permite a los analistas de sistemasestudiar las posturas, las creencias, el comportamiento y las características de varias personas clave en la organi-zación que se pueden ver afectadas por los sistemas actual y propuesto. Las posturas son lo que las personas enla organización dicen desear (en un nuevo sistema, por ejemplo); las creencias son lo que las personas dan porcierto; el comportamiento es lo que hacen los miembros de la organización, y las características son las propie-dades de las personas u objetos.Las respuestas obtenidas a través de cuestionarios (también conocidos como encuestas) en los que se utili-zan preguntas cerradas se pueden cuantificar. Si encuesta personas a través del correo electrónico o Web, puedeusar software para convertir las respuestas electrónicas directamente en tablas de datos para analizarlas medianteuna aplicación de hoja de cálculo o paquetes de software estadísticos. Las respuestas a los cuestionarios en losque se utilizan preguntas abiertas se analizan e interpretan de otras formas. Las respuestas a las preguntas sobreposturas y creencias son sensibles a las palabras elegidas por el analista de sistemas.Por medio del uso de cuestionarios, el analista puede buscar cuantificar lo que encontró en las entrevistas.Además, es posible usar cuestionarios para determinar qué tan difundido o limitado está realmente un senti-miento expresado en una de las entrevistas. Por lo contrario, se pueden utilizar cuestionarios para encuestar a unamuestra grande de usuarios de sistemas con el fin de detectar problemas o llevar a la mesa de discusión cuestio-nes importantes antes de programar las entrevistas.En este capítulo vamos a comparar y contrastar los cuestionarios con las entrevistas. Hay muchas similitudesentre las dos técnicas y tal vez lo ideal sería utilizarlas en conjunto, ya sea para dar seguimiento a las respuestasconfusas de un cuestionario con una entrevista, o para diseñar el primero con base en lo que se descubrió en laentrevista. Sin embargo, cada técnica tiene sus propias funciones específicas, por lo que no siempre es necesarioo conveniente utilizar ambas.Planeación del uso de cuestionariosA primera vista, tal vez los cuestionarios parezcan una forma rápida de recopilar cantidades masivas de datossobre la forma en que los usuarios valoran el sistema actual, los problemas que experimentan con su trabajoy lo que las personas esperan de un sistema nuevo o modificado. Aunque es cierto que podemos recopilarmucha información a través de los cuestionarios sin invertir tiempo en las entrevistas cara a cara, para de-sarrollar un cuestionario útil se requiere mucho tiempo de planeación. Cuando decidimos encuestar a losusuarios por correo electrónico o a través de Web, debemos tomar en cuenta ciertos aspectos de planeaciónadicionales relacionados con la confidencialidad, la autenticación de la identidad y los problemas de respuestasmúltiples.Primero hay que decidir lo que planeamos conseguir a través del uso de una encuesta. Por ejemplo, si deseaconocer el porcentaje de usuarios que prefieren una página FAQ para informarse sobre nuevos paquetes desoftware, un cuestionario podría ser la técnica apropiada; si desea un análisis detallado del proceso de tomade decisiones de un gerente, la entrevista es una mejor opción.He aquí algunos lineamientos para ayudarlo a decidir si es apropiado utilizar cuestionarios. Considere el usode cuestionarios si:1. Las personas a quienes necesita interrogar están esparcidas en un área amplia (distintas sucursales de lamisma corporación).2. Hay gran cantidad de personas involucradas en el proyecto de sistemas, por lo que es importante saber quéproporción de un grupo dado (por ejemplo, la gerencia) aprueba o desaprueba una característica específicadel sistema propuesto.3. Piensa realizar un estudio exploratorio y desea medir la opinión general antes de que el proyecto de sistemastome cualquier dirección específica.www.xlibros.com
CAPÍTULO 4 • RECOPILACIÓN DE INFORMACIÓN: MÉTODOS INTERACTIVOS 1154. Desea estar seguro de que se identifiquen y consideren los problemas con el sistema actual en las entrevistasde seguimiento.Una vez que haya determinado que tiene buenos motivos para usar un cuestionario y después de que hayaseñalado los objetivos a cumplir por medio de éste, podrá empezar a formular las preguntas.Escribir las preguntasLa mayor diferencia entre las preguntas que se utilizan en la mayoría de las entrevistas y las que se utilizan encuestionarios es que las entrevistas permiten la interacción entre las preguntas y sus significados. En una entre-vista, el analista tiene la oportunidad de refinar una pregunta, definir un término confuso, cambiar el curso delcuestionamiento, responder a una mirada desconcertada y en general, controlar el contexto.En un cuestionario, muy pocas de estas oportunidades son posibles. Por lo tanto, para el analista las pregun-tas deben ser tan claras como el agua, el flujo del cuestionario debe ser convincente, se debe anticipar a las pre-guntas del encuestado, y la administración del cuestionario se debe planear con detalle (el encuestado es la personaque responde o contesta el cuestionario).Los tipos de preguntas básicas que se utilizan en el cuestionario son abiertas y cerradas, como vimos en lasentrevistas. Debido a las restricciones que se imponen en los cuestionarios, se justifica un análisis adicional sobrelos tipos de preguntas.PREGUNTAS ABIERTAS Recuerde que las preguntas (o declaraciones) abiertas son las que dejan abiertas todas lasposibles opciones de respuesta para el encuestado. Por ejemplo, las preguntas abiertas en un cuestionario podríanser: “Describa los problemas que experimenta en la actualidad con los informes de las salidas”, o “En su opinión,¿qué tan útiles son los manuales de usuario para la aplicación de contabilidad del sistema actual?”Al escribir preguntas abiertas para un cuestionario, debemos anticiparnos al tipo de respuesta que obten-dremos. Por ejemplo, si hace una pregunta como: “¿Cómo se siente en relación con el nuevo sistema?”, las res-puestas pueden ser demasiado amplias como para obtener una interpretación o comparación precisa. Por lo tanto,incluso cuando escriba una pregunta abierta, ésta debe ser lo suficientemente estrecha como para guiar a losencuestados a responder en cierta forma específica (en la figura 4.10 hay ejemplos de preguntas abiertas).En particular, las preguntas abiertas son adecuadas para las situaciones en las que queremos conocer lasopiniones de los miembros de la organización sobre cierto aspecto del sistema, ya sea un producto o un proceso.En tales casos es conveniente utilizar preguntas abiertas cuando es imposible enlistar con efectividad todas lasposibles respuestas a la pregunta.PREGUNTAS CERRADAS Recuerde que las preguntas (o declaraciones) cerradas son aquellas que limitan o cierranlas opciones de respuestas disponibles para el encuestado. Por ejemplo, en la figura 4.11 la declaración en lapregunta 23 (“A continuación se muestran los seis paquetes de software disponibles en este momento. Marqueel (los) paquete(s) de software que utiliza personalmente con más frecuencia”) es cerrada. Observe que a losencuestados no se les pregunta por qué prefieren el paquete, ni se les pide que seleccionen más de uno, inclusoaunque esa sea una respuesta más representativa.Hay que utilizar preguntas cerradas cuando el analista de sistemas pueda enlistar de manera efectiva todaslas posibles respuestas a la pregunta y cuando todas éstas sean mutuamente exclusivas (al elegir una de ellas sedescarta la posibilidad de elegir cualquier otra).Use preguntas cerradas cuando desee encuestar a una amplia muestra de personas. La razón se vuelve obviaal momento de imaginar cómo se verán los datos que vamos a recolectar. Si utiliza sólo preguntas abiertas paracientos de personas, sería imposible lograr un análisis e interpretación correctos de sus respuestas sin la ayuda deun programa de análisis de contenido computarizado.Elegir uno u otro tipo de preguntas implica sacrificar unas ventajas para lograr otras. La figura 4.12 sintetizala relación entre las ventajas de un tipo y la ventajas del otro. Tenga en cuenta que las respuestas a las preguntasabiertas pueden ayudar a los analistas a obtener una visión detallada y preliminar, así como amplitud y profundi-dad sobre un tema. Aunque las preguntas abiertas se pueden escribir con facilidad, las respuestas para ellas sondifíciles y se requiere tiempo para analizarlas.Al referirnos a la escritura de preguntas cerradas con respuestas ordenadas o desordenadas, a menudonos referimos al proceso como escalar. En una sección posterior hablaremos sobre el uso de escalas en lasencuestas.TERMINOLOGÍA DE LAS PREGUNTAS Al igual que en el caso de las entrevistas, el lenguaje de los cuestionarioses un aspecto en extremo importante de su efectividad. Incluso si el analista de sistemas cuenta con un conjuntoestándar de preguntas relacionadas con el desarrollo de sistemas, es conveniente escribirlas de manera quereflejen la terminología propia de la empresa.www.xlibros.com
116 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNLos encuestados aprecian los esfuerzos de alguien que se molesta en escribir un cuestionario que refleje supropio uso del lenguaje. Por ejemplo, si la empresa utiliza el término supervisores en vez de gerentes, o unidadesen vez de departamentos, al incorporar los términos preferidos al cuestionario los encuestados se relacionan me-jor con el significado de las preguntas. Será más fácil interpretar las respuestas con precisión y los encuestadosserán más entusiastas en general.Para verificar que el lenguaje utilizado en el cuestionario sea el de los encuestados, pruebe varias preguntasde muestra en un grupo piloto (de prueba). Pídales que pongan especial atención en cuanto a la precisión de laspalabras y que cambien cualquier palabra que no suene adecuada.He aquí algunos lineamientos que puede utilizar al elegir el lenguaje para su cuestionario:1. Use el lenguaje de los encuestados siempre que sea posible. Mantenga un vocabulario simple.2. Concéntrese en ser específico en vez de utilizar palabras imprecisas. Evite también las preguntas demasiadoespecíficas.53. ¿Cuáles son los problemas más frecuentes queexperimenta con la salida de la computadora?A.B.C.54. De los problemas que enlistó en la pregunta anterior,¿cuál es el más difícil de resolver?55. ¿Por qué?Las preguntas abiertaspueden pedir alencuestado que hagalistas...... o respuestasdetalladas ...... o respuestascortas.A continuación hay preguntas sobre usted. Llene los espaciosen blanco lo mejor que pueda.67. ¿Cuánto tiempo lleva trabajando para esta empresa?años y meses68. ¿Cuánto tiempo lleva trabajando en la misma industria?años y meses69. ¿En qué otras industrias ha trabajado?FIGURA 4.10Preguntas abiertas que se utilizanpara los cuestionarios.www.xlibros.com
CAPÍTULO 4 • RECOPILACIÓN DE INFORMACIÓN: MÉTODOS INTERACTIVOS 117Responda a las preguntas 23 y 24 marcando la casilla apropiada.23. A continuación se muestran los seis paquetes de softwaredisponibles en este momento. Marque el (los) paquete(s)de software que utiliza personalmente con más frecuencia[ ] Microsoft Excel [ ] Microsoft Access[ ] Microsoft PowerPoint [ ] Microsoft Windows Live Mail[ ] Oracle SCM [ ] Visible Analyst24. “Por lo general las cifras de ventas están retrasadas".[ ] De acuerdo [ ] En desacuerdoResponda a las preguntas 25 y 26 encerrando en un círculo el númeroapropiado.25. “Cuando los servicios de datos de cómputo preparan lascifras de ventas, se retrasan".Nunca Raras veces A veces A menudo Siempre1 2 3 4 5Responda a las preguntas 45-48 encerrando en un círculo larespuesta apropiada.45. La división en la que me encuentro en la actualidad se llamaInversionesOperacionesMarketing46. Mis antecedentes académicos se pueden describir mejorcomoPreparatoriaEstudios universitarios parcialesLicenciaturaMaestría o superiorMi género esMasculinoFemeninoLas preguntas cerradaspueden pedir alencuestado que marqueuna casilla ...... o que encierreun número ...... o encerrartoda la respuesta.FIGURA 4.11Las preguntas cerradas en loscuestionarios ayudan a asegurarlas respuestas.Abiertas CerradasLento RápidoAlto BajoAlto BajoFácil DifícilDifícil FácilVelocidad de llenadoNaturaleza exploratoriaAmplitud y profundidadFacilidad de preparaciónFacilidad de análisisFIGURA 4.12Las ventajas que sacrifica al elegiruno y otro tipo de preguntas.www.xlibros.com
118 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓN3. Trate de mantener las preguntas cortas.4. No use un tono condescendiente, al usar opciones redactadas en lenguaje de bajo nivel, para dirigirse a losencuestados.5. Evite la predisposición en sus palabras. Esto también significa evitar preguntas censurables.6. Dirija las preguntas a los encuestados apropiados (es decir, los que sean capaces de responder). No supongaque conocen demasiado.7. Asegúrese de que las preguntas sean correctas en el sentido técnico antes de incluirlas.8. Use software para verificar si el nivel de lectura es apropiado para los encuestados.Uso de escalas en los cuestionariosEscalar es el proceso de asignar números u otros símbolos a un atributo o característica, con el fin de medirlos.A menudo las escalas son arbitrarias y pueden no ser únicas. Por ejemplo, la temperatura se mide en varias for-mas, por ejemplo, en escala Fahrenheit (en donde el agua se congela a 32 grados y hierve a 212 grados) y enescala Celsius (en donde el congelamiento ocurre a 0 grados y el hervor a 100 grados).MEDICIÓN Hay dos formas de escalas de medición que los analistas de sistemas utilizan por lo general:1. Escalas nominales2. Escalas de intervaloLas escalas nominales se utilizan para clasificar cosas. Una pregunta tal como:¿Qué tipo de software utiliza más?1  Un procesador de palabras2  Una hoja de cálculo3  Una base de datos4  Un programa de correo electrónicoutiliza una escala nominal. En definitiva, las escalas nominales son las formas más débiles de medición. Por logeneral, todo lo que el analista puede hacer con ellas es obtener los totales de cada clasificación.Las escalas de intervalo poseen la característica de que los intervalos entre cada uno de los números soniguales. Debido a ello, se pueden realizar operaciones matemáticas con los datos del cuestionario para obtener unanálisis más completo. Las escalas Fahrenheit y Celsius son ejemplos de escalas de intervalo, las cuales midenla temperatura.El ejemplo antes mencionado del Centro de información no es en definitiva el de una escala de intervalo,pero si anclamos la escala en uno de sus extremos, tal vez el analista quiera suponer que el encuestado percibeque los intervalos son iguales:¿Qué tan útil es el soporte proporcionado por el Grupo de soporte técnico?No es nada útil Extremadamente útil1 2 3 4 5Si el analista de sistemas hace esta suposición, es posible un análisis más cuantitativo.VALIDEZ Y CONFIABILIDAD Al construir escalas podemos usar dos medidas de rendimiento: validez yconfiabilidad. El analista de sistemas debe estar consciente de estas dos cuestiones.La validez es el grado con el que la pregunta mide lo que el analista requiere. Por ejemplo, si el propósitodel cuestionario es determinar si la organización está lista o no para un cambio importante en las operaciones decómputo, ¿los cuestionarios miden eso?La confiabilidad implica consistencia. Si el cuestionario se aplicó una vez y después se volvió a aplicar bajolas mismas condiciones, y se obtuvieron los mismos resultados en ambas ocasiones, se dice que el instrumentotiene consistencia externa. Si el cuestionario contiene subpartes y éstas tienen resultados equivalentes, se diceque el instrumento tiene consistencia interna. Es importante tener consistencia externa e interna.www.xlibros.com
CAPÍTULO 4 • RECOPILACIÓN DE INFORMACIÓN: MÉTODOS INTERACTIVOS 119CONSTRUCCIÓN DE ESCALAS La construcción de escalas es una tarea seria. Si construye las escalas con pococuidado se producirá uno de los siguientes problemas:1. Indulgencia.2. Tendencia central.3. Efecto halo.La indulgencia es un problema que provocan los encuestados que califican en forma superficial. Para evitarel problema de la indulgencia, el analista de sistemas puede desplazar la categoría “promedio” a la izquierda(o derecha) del centro.La tendencia central es un problema que ocurre cuando los encuestados califican todo como promedio. Paramejorar la escala, el analista puede 1) hacer las diferencias más pequeñas en los dos extremos, 2) ajustar la soli-dez de los descriptores o 3) crear una escala con más puntos.El efecto halo es un problema que surge cuando la impresión que se forja en una pregunta se acarrea hastala siguiente. Por ejemplo, si va a calificar un empleado del que tiene una impresión favorable, tal vez le otorgueuna calificación alta en todas las categorías o rasgos, sin importar que sea o no realmente una de sus mejores ca-racterísticas. La solución es colocar un rasgo y varios empleados en cada página, en vez de un empleado y variosrasgos en una página.Diseño de los cuestionariosMuchos de los mismos principios relevantes para el diseño de formularios para introducir datos (como veremosen el capítulo 12) también son importantes aquí. Aunque la intención del cuestionario es recopilar informaciónsobre posturas, creencias, comportamiento y características cuyo impacto pueda alterar el trabajo del usuario enforma considerable, los encuestados no siempre se ven motivados a responder. Recuerde que los miembros de laorganización reciben demasiadas encuestas en general, muchas de las cuales son con frecuencia malintenciona-das y triviales.Un cuestionario bien diseñado y relevante puede ayudar a vencer parte de esta resistencia a responder. Heaquí algunas reglas para diseñar un buen cuestionario:1. Incluya mucho espacio en blanco.2. Incluya mucho espacio para escribir o teclear las respuestas.3. Facilite a los encuestados la acción de marcar con claridad sus respuestas.4. Mantenga un estilo consistente.Al diseñar cuestionarios para Web, aplique las mismas reglas que utiliza al diseñar cuestionarios en papel.La mayoría de los paquetes de software permiten insertar uno de los formatos de entrada de datos de uso comúnque se muestran en la figura 4.13. Siga los cuatro lineamientos anteriores para obtener una mejor tasa de respues-tas en el cuestionario.Cuadro de textode una líneaNombre PropósitoAparienciaCuadro de textodesplazableCasilla deverificaciónBotón deopciónMenúdesplegableBotónSe utiliza para obtener una pequeña cantidad de texto ylimitar la respuesta a unas cuantas palabrasSe utiliza para obtener uno o más párrafos de textoSe utiliza para obtener una respuesta del tipo sí-no (porejemplo, ¿Desea que lo incluyamos en la lista de correo?)Se utiliza para obtener una respuesta del tipo sí-no overdadero-falsoSe utiliza para obtener resultados más consistentes (elencuestado puede elegir la respuesta apropiada de unalista predeterminada; por ejemplo, una lista de abreviaturasde estados)Se utiliza con frecuencia para una acción (por ejemplo,el encuestado hace clic en un botón marcado como“Enviar” o “Borrar”)FIGURA 4.13Al diseñar una encuesta Web,tenga en cuenta que hay distintasmaneras de capturar las respuestas.www.xlibros.com
120 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNO P O R T U N I D A D D E C O N S U L T O R Í A 4 . 4El cuestionario insoportable“Voy a entrar en depresión o, por lo menos, voy a estar desani-mado si alguien no averigua esto pronto”, dice Penny Stox, ge-rente de oficina para Carbon, Carbon & Rippy, una casa de bolsade tamaño considerable. Penny está sentada en una mesa deconferencias frente a usted y dos de sus ejecutivos de cuenta másproductivos, By Lowe y Sal Hy. Todos están reflexionando sobrelas respuestas a un cuestionario que se distribuyó entre los eje-cutivos de cuenta de la empresa, el cual se muestra en la figura4.C1.“Necesitamos una bola de cristal para entenderlos”, dicen Byy Sal al mismo tiempo.“Tal vez refleje cierto tipo de ciclo optimista, o algo así”, dicePenny al tiempo que lee más respuestas. “Por cierto, ¿quién diseñóesta joya?”“Rich Kleintz”, dicen By y Sal al unísono.“Bueno, como pueden ver, ¡no nos dice nada!”, exclama Penny.Penny y su personal están insatisfechos con las respuestas querecibieron en el cuestionario insoportable; además sienten que lasrespuestas son reflexiones poco realistas de la cantidad de informa-ción que desean los ejecutivos de cuenta. Explique en un párrafo porqué están ocurriendo estos problemas. En una hoja aparte, cambiela escala de las preguntas para evitar estos problemas.Circule el número apropiado para cada fuente de información descrita.1. Informes industriales AproximadamenteigualMenos Más1 2 3 4 52. Análisis de tendenciasAproximadamenteigualMenos Más1 2 3 4 53. Gráficos generados por computadoraAproximadamenteigualMenos Más1 2 3 4 54. Servicios de asesoría en inversionesAproximadamenteigualMenos Más1 2 3 4 55. Gráficos de puntos y figurasAproximadamenteigualMenos Más1 2 3 4 56. Análisis de cartera de clientes computarizadaAproximadamenteigualMenos Más1 2 3 4 57. Información actualizadaAproximadamenteigualMenos Más1 2 3 4 5Necesitamoscambiar estecuestionario.FIGURA 4.C1Cuestionario desarrollado para la casa de bolsa Carbon, Carbon & Rippy, por Rich Kleintz.www.xlibros.com
CAPÍTULO 4 • RECOPILACIÓN DE INFORMACIÓN: MÉTODOS INTERACTIVOS 121ORDEN DE LAS PREGUNTAS No existe una forma de ordenar las preguntas en el cuestionario que sea la mejorde todas. Una vez más, al ordenar preguntas debe tener en cuenta sus objetivos al usar el cuestionario y despuésdeterminar la función de cada pregunta para ayudarle a obtener sus objetivos. También es importante ver elcuestionario a través de los ojos del encuestado. Algunos lineamientos para ordenar preguntas son:1. Coloque primero las preguntas que sean importantes para los encuestados.2. Agrupe elementos de contenido similar.3. Introduzca primero las preguntas menos controversiales.Es conveniente que los encuestados no se sientan amenazados y que se interesen en las preguntas lo más que sepueda, sin que se alteren por alguna cuestión específica.O P O R T U N I D A D D E C O N S U L T O R Í A 4 . 5Orden en las cortes“Me encanta mi trabajo”, dice Tennys para empezar la entrevistacon una volea. “Es muy parecido a un juego. Mantengo mi vista enla pelota y nunca me distraigo”, continúa. Tennyson “Tennys” Courtses gerente de Global Health Spas, Inc., una empresa que cuenta conspas medicinales y recreativos populares en todo el mundo.“Ahora que terminé mi MBA, siento que estoy en la cima delmundo con Global”, dice Tennys. “Creo que realmente puedo ayu-dar a poner en forma este negocio con sus computadoras y spasmedicinales”.Tennys está tratando de ayudarle a usted y a su grupo de siste-mas, que están desarrollando un sistema para que lo utilicen las 80sucursales (en donde en la actualidad cada grupo administra supropio papeleo). “¿Le puedo pasar esto?”, Tennys pregunta a TerriTowell, miembro del equipo de analistas de sistemas que usted di-rige. “Es un cuestionario que diseñé para distribuirlo a todos losgerentes de los spas”.Terri, que siempre ha sido buena deportista, le dice a Tennysque le encantaría dar un vistazo al formulario. Pero de vuelta en laoficina, Terri le devuelve la pelota. Critique de manera sistemáticala técnica de Tennys según lo descrito en la figura 4.C2 y explíquelepunto por punto lo que necesita para ser un cuestionario sin igualcon un formulario ganador. Con base en la crítica que elabore, digaa Tennys lo que debe hacer para volver a escribir el formulario, estavez en forma de encuesta Web.CUESTIONARIO PARA TODOS LOS GERENTES DE SPAS MEDICINALES*** URGENTE *** LLENE EL CUESTIONARIO DE INMEDIATO YENTRÉGUELO EN PERSONA A SU GERENTE DE DIVISIÓN. SE RETENDRÁSU SIGUIENTE NÓMINA HASTA QUE SE CONFIRME QUE LO ENTREGÓ.En 10 palabras o menos, ¿qué quejas ha presentado en relación con elsistema de cómputo actual durante el periodo de los últimos seis mesesa un año?¿Hay otras personas que se sientan igual que usted en su sucursal?¿Quiénes? Haga una lista de sus nombres y puestos.1. 2.3. 4.5.7.¿Cuál es el mayor problema que tiene al comunicar susrequerimientos de información a las oficinas generales?Descríbalo en forma breve.¿Cuánto tiempo de inactividad en las computadorasexperimentó el año pasado?1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 -¿Hay equipo de cómputo que nunca utiliza?Descripción Número de serie¿Desea que se lo lleven? De acuerdo Neutral En desacuerdoEn su opinión, ¿qué hay que hacer ahora en cuanto a lascomputadoras y Global Health Spas?Gracias por llenar este cuestionario. • • • • • • • • • • • • • • • •TerriPor favor ayúdemea mejorar esteformulario.TennysFIGURA 4.C2Cuestionario desarrollado para los gerentes de Global Health Spas, por Tennys Courts.www.xlibros.com
122 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNAdministración de los cuestionariosENCUESTADOS El proceso de decidir quién recibirá el cuestionario se lleva a cabo en conjunto con la tarea de establecerobjetivos para sus resultados. El muestreo (que veremos en el capítulo 5) ayuda al analista de sistemas a determinarel tipo de representación necesario y, en consecuencia, el tipo de encuestados que deben recibir el cuestionario.A menudo se eligen encuestados que sean representativos debido a su rango, el tiempo que han estado conla empresa, sus responsabilidades laborales o el interés especial en el sistema actual o propuesto. Asegúrese deincluir suficientes encuestados para obtener un muestreo razonable en caso de que no se devuelvan algunos cues-tionarios o de que algunas hojas de respuesta se llenen de manera incorrecta y por ende haya que descartarlas.MÉTODOS PARA ADMINISTRAR EL CUESTIONARIO El analista de sistemas cuenta con varias opciones paraadministrar el cuestionario; a menudo la elección del método administrativo se determina en base a la situaciónde negocios existente. Las opciones para administrar el cuestionario son:1. Convocar al mismo tiempo a todos los encuestados concernientes.2. Entregar cuestionarios en blanco en forma personal y recoger los cuestionarios que ya estén llenos.3. Permitir que los encuestados administren su propio cuestionario en el trabajo y lo depositen en una cajaubicada en un lugar céntrico.4. Enviar por correo los cuestionarios a los empleados en las sucursales y proveer una fecha de entrega,instrucciones y un sobre con franqueo pagado.5. Administrar el cuestionario en forma electrónica, ya sea a través de correo electrónico o Web.Cada uno de estos cinco métodos tiene ventajas y desventajas. Es común permitir que los encuestados ad-ministren su propio cuestionario. Las tasas de respuesta con este método son un poco más bajas que con losotros métodos, debido a que las personas a veces se olvidan del formulario, lo pierden o lo ignoran de maneraintencional. Sin embargo, al administrar su propio cuestionario, las personas sienten que tienen asegurado suanonimato y es posible que algunos encuestados den respuestas menos cautelosas. Las encuestas por correo elec-trónico y Web se encuentran en la categoría de cuestionarios autoadministrados.Administrar el cuestionario vía electrónica, ya sea por correo electrónico o a través de un sitio Web, es unamanera de llegar rápidamente a los usuarios del sistema actual. Se minimizan los costos de tener que sacar copias.Además, el encuestado puede responder a su propia conveniencia para después recolectar todos los cuestionariosen forma automática y almacenarlos en medios electrónicos. Hay cierto software que permite a los encuestadosempezar a contestar una encuesta, guardar sus respuestas y regresar más tarde para terminar de contestar en casode interrupciones. Se pueden enviar recordatorios a los encuestados de una manera fácil y económica por me-dio de correo electrónico, al igual que las notificaciones para hacer saber al analista cuando el encuestado hayaabierto el correo electrónico. También hay software que convierte los datos de los correos electrónicos en tablaspara usarlas en software de hojas de cálculo o de análisis estadístico. Hay un servicio popular que los consultoresutilizan para crear y administrar encuestas en línea. SurveyMonkey.com (www.surveymonkey.com) es una em-presa ubicada en Portland, Oregon que empezó en 1999 y hace poco agregó a sus ofrecimientos de productos unservicio de marketing por email conocido como MailChimp.La investigación muestra que los encuestados están dispuestos a responder, a través de Internet, preguntassobre cuestiones delicadas. Por ende, es probable que las preguntas que tal vez sean difíciles de plantear en per-sona en relación con los problemas de sistemas, sí se puedan plantear en una encuesta Web.Este capítulo aborda tres de los métodos interactivos clavepara recopilar información y que el analista de sistemas puedeutilizar: entrevistas, JAD y cuestionarios. Durante el proceso dela entrevista, los analistas esperan escuchar cuestiones de HCIrelacionadas con la ergonomía, la estética, la capacidad de usoy la utilidad, así como los objetivos, sentimientos, opiniones yprocedimientos informales en las entrevistas con los encarga-dos de tomar las decisiones en la organización. Las entrevistasson diálogos planeados de preguntas y respuestas entre dospersonas. Los analistas utilizan la entrevista para desarrollarsu relación con un cliente, observar el entorno de trabajo yrecolectar datos. Es preferible llevar a cabo las entrevistas enpersona.Los cinco pasos a seguir para planear la entrevista son leerel material sobre los antecedentes, establecer los objetivos dela entrevista, decidir a quiénes entrevistar, preparar al entrevis-tado y decidir sobre los tipos y la estructura de las preguntas.Las preguntas son de dos tipos básicos: abiertas o cerradas.Las preguntas abiertas permiten todas las opciones de respuestapara el entrevistado. Las preguntas cerradas limitan las posiblesopciones de respuesta. Las preguntas de sondeo o de seguimientopueden ser cerradas o abiertas, pero le piden al entrevistado unacontestación más detallada.Las entrevistas se pueden estructurar en tres formas: pirá-mide, embudo o diamante. Las estructuras de pirámide empiezancon preguntas cerradas detalladas y se amplían con preguntasmás generalizadas. Las estructuras de embudo empiezan conpreguntas abiertas generales y después se restringen a preguntascerradas más específicas. Las estructuras en forma de diamantecombinan las ventajas de las otras dos estructuras, pero se requiereRESUMENwww.xlibros.com
CAPÍTULO 4 • RECOPILACIÓN DE INFORMACIÓN: MÉTODOS INTERACTIVOS 123E X P E R I E N C I A D E H Y P E R C A S E ® 4 . 2“ Tal vez ya se haya dado cuenta de que no todos disfrutan dellenar cuestionarios en MRE. Al parecer recibimos más cuestiona-rios que la mayoría de las empresas. Creo que es porque muchos delos empleados, en especial los de la Unidad de capacitación ante-rior, valoran las contribuciones de los datos de los cuestionarios ennuestro trabajo con los clientes. Cuando examine el cuestionarioque distribuyó Snowden, tal vez no sólo quiera ver los resultadossino también criticar los métodos. Siempre he pensado que real-mente podemos mejorar nuestro rendimiento interno para, en unmomento dado, atender mejor a nuestros clientes. La próxima vezque construyamos un cuestionario queremos ser capaces de mejorartres cosas: la confiabilidad de los datos, la validez de los datos y latasa de respuestas que recibimos”.Preguntas de HYPERCASE1. ¿Qué evidencia de cuestionarios ha encontrado en MRE? Seaespecífico sobre lo que encontró y dónde lo hizo.2. Critique el cuestionario que Snowden hizo circular. ¿Qué sepuede hacer para mejorar su confiabilidad, validez y tasa derespuesta? Mencione tres sugerencias prácticas.3. Escriba un cuestionario corto para dar seguimiento a algunosaspectos de la fusión entre los departamentos de Sistemasadministrativos y la Unidad de capacitación en MRE quetodavía le intriguen. Asegúrese de observar todos loslineamientos para el buen diseño de cuestionarios.4. Rediseñe el cuestionario que escribió en la pregunta 3, deforma que se pueda utilizar en una encuesta Web.PALABRAS Y FRASES CLAVEconfiabilidadcuestionariodiseño de aplicación conjunta (JAD)efecto haloencuestadosescala de intervaloescala nominalestructura de embudoestructura de pirámideestructura en forma de diamanteindulgenciainteracción humano-computadora (HCI)objetivos del entrevistadoopiniones del entrevistadopreguntas abiertaspreguntas cerradaspreguntas cerradas bipolaresprocedimientos informalessentimientos del entrevistadosondeostendencia centralvalidezmás tiempo para llevarlas a cabo. Hay concesiones implicadas aldecidir la estructura para hacer las preguntas de las entrevistas ylas secuencias de esas preguntas.Para reducir tanto el tiempo como el costo de las entrevis-tas personales, tal vez los analistas quieran considerar el diseñode aplicaciones conjuntas (JAD) como alternativa. Medianteel uso de JAD los analistas pueden analizar los requerimientoshumanos de información y diseñar una interfaz de usuario conlos usuarios en un ambiente de grupo. Una evaluación cuida-dosa de la cultura específica de la organización ayudará al ana-lista a juzgar si es adecuado usar JAD.Mediante el uso de cuestionarios (encuestas), los analistasde sistemas pueden recopilar datos sobre cuestiones de HCI,posturas, creencias, comportamiento y características de laspersonas clave en la organización. Las encuestas son útiles silas personas en la organización están dispersas en una zonaamplia, si hay muchas personas involucradas con el proyectode sistemas, si se requiere un trabajo exploratorio antes de re-comendar alternativas o si existe la necesidad de detectar pro-blemas antes de llevar a cabo las entrevistas.Una vez que se establecen los objetivos para la encuesta, elanalista puede empezar a escribir preguntas abiertas o cerradas.Lo ideal sería que las preguntas fueran simples, específicas,cortas, sin predisposiciones ni condescendencias, con precisióntécnica, dirigidas a personas que tengan conocimientos apro-piados y escritas en un nivel de lectura apropiado. Tal vez elanalista de sistemas quiera usar escalas, ya sea para medir lasposturas o características de los encuestados o hacer que éstosactúen como jueces en relación con el tema del cuestionario.Escalar es el proceso de asignar números u otros símbolos a unatributo o característica.El control consistente del formato y estilo de los cuestiona-rios puede producir una mejor tasa de respuesta. Podemos dise-ñar las encuestas Web para fomentar respuestas consistentes.Además, es importante ordenar y agrupar las preguntas de unaforma significativa para ayudar a los encuestados a entender elcuestionario. Se pueden administrar las encuestas de varias for-mas; por ejemplo vía electrónica a través del correo electrónicoo Web, o estando el analista presente entre un grupo de usua-rios.www.xlibros.com
124 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNPREGUNTAS DE REPASO1. ¿Qué tipos de información hay que buscar en las entrevistas?2. Liste los cinco pasos necesarios en la preparación para una entrevista.3. Defina lo que significa preguntas abiertas en una entrevista. Mencione ocho beneficios y cinco desventajas de usarlas.4. ¿Cuándo es apropiado usar preguntas abiertas en las entrevistas?5. Defina lo que implica el uso de preguntas cerradas en una entrevista. Mencione seis beneficios y cuatro desventajas deusarlas.6. ¿Cuándo es apropiado usar preguntas cerradas en las entrevistas?7. ¿Qué es una pregunta de sondeo? ¿Cuál es el propósito de usar una pregunta de sondeo en las entrevistas?8. Defina lo que significa estructura de pirámide. ¿Cuándo es útil emplearla en las entrevistas?9. Defina lo que significa estructura de embudo. ¿Cuándo es útil emplearla en las entrevistas?10. Defina lo que significa estructura en forma de diamante. ¿Cuándo es útil emplearla en las entrevistas?11. Defina diseño de aplicación conjunta (JAD).12. Haga una lista de las situaciones que garantizan el uso de JAD en vez de las entrevistas personales en la organización.13. Haga una lista de los beneficios potenciales de usar el diseño de aplicación conjunta.14. Haga una lista de tres posibles desventajas de usar JAD como alternativa para las entrevistas personales.15. ¿Qué tipos de información busca el analista de sistemas mediante el uso de cuestionarios o encuestas?16. Haga una lista de cuatro situaciones en las que se utilicen los cuestionarios en forma apropiada.17. ¿Cuáles son los dos tipos básicos de preguntas que se utilizan en los cuestionarios?18. Haga una lista de dos razones por las que un analista de sistemas usaría una pregunta cerrada en un cuestionario.19. Haga una lista de dos razones por las que un analista de sistemas usaría una pregunta abierta en un cuestionario.20. ¿Cuáles son los siete lineamientos para elegir el lenguaje para el cuestionario?21. Defina lo que significa escalar.22. ¿Cuáles son los dos tipos de información o de escalas que utilizan los analistas de sistemas con más frecuencia?23. ¿Para qué se utilizan las escalas nominales?24. Mencione un ejemplo de una escala de intervalo.25. ¿Cuándo debe el analista usar escalas de intervalo?26. Defina confiabilidad en relación con la construcción de escalas.27. Defina validez en relación con la construcción de escalas.28. Haga una lista de tres problemas que pueden ocurrir debido a la acción de construir escalas sin cuidado.29. ¿Cuáles son las cuatro acciones que se pueden tomar para asegurar que el formato del cuestionario produzca una buenatasa de respuesta?30. ¿Qué preguntas hay que colocar primero en el cuestionario?31. ¿Por qué hay que agrupar preguntas sobre temas similares?32. ¿Cuál sería una ubicación apropiada para las preguntas controversiales?33. Haga una lista de cinco métodos para administrar el cuestionario.34. ¿Qué consideraciones son necesarias cuando los cuestionarios están basados en Web?PROBLEMAS1. Como parte de su proyecto de análisis para actualizar las funciones de contabilidad automatizadas para XanaduCorporation, una empresa fabricante de cámaras digitales, usted entrevistará a Leo Blum, el jefe de contabilidad. Escribade cuatro a seis objetivos de la entrevista relacionados con la forma en que Leo utiliza las fuentes de información, losformatos de la información, la frecuencia con que toma decisiones, las calidades deseadas de información y el estilo detoma de decisiones.a. Escriba en un párrafo cómo se acercará a Leo para programar una entrevista.b. Indique la estructura que elegirá para esta entrevista. ¿Por qué?c. Leo tiene cuatro subordinados a su cargo que también utilizan el sistema. ¿Los entrevistaría también? ¿Sí o no, ypor qué?d. ¿Trataría usted también de entrevistar clientes (visitantes del sitio Web)? ¿Hay mejores formas de obtener lasopiniones de los clientes? ¿Sí o no, y por qué?e. Escriba tres preguntas abiertas que enviará por correo electrónico a Leo antes de su entrevista. Escriba un enunciadoen el que le explique por qué es preferible realizar una entrevista en persona, en vez de hacerlo por correoelectrónico.2. He aquí cinco preguntas escritas por uno de los miembros de su equipo de análisis de sistemas. La persona a la que va aentrevistar es el gerente local de LOWCO, un punto de venta de una cadena nacional de descuento, quien le ha pedidoque trabaje en un sistema de información de administración para proveer información sobre el inventario. Revise estaspreguntas para el miembro de su equipo.1. ¿Cuándo fue la última vez que pensó seriamente en su proceso de toma de decisiones?2. ¿Quiénes son los empleados problemáticos en su tienda? Es decir, los que mostrarán más resistencia a los cambiosen el sistema que propuse.3. ¿Hay decisiones sobre las que necesite más información para tomarlas?4. No tiene problemas graves con el sistema de control de inventario actual, ¿o sí?www.xlibros.com
CAPÍTULO 4 • RECOPILACIÓN DE INFORMACIÓN: MÉTODOS INTERACTIVOS 1255. Cuénteme un poco sobre los resultados que le gustaría ver.a. Vuelva a escribir cada pregunta para que sea más efectiva al obtener información.b. Ordene sus preguntas en estructura de pirámide, embudo o forma de diamante y etiquételas con el nombre de laestructura que utilizó.c. ¿Qué lineamientos puede dar al miembro de su equipo para mejorar sus preguntas de entrevistas en el futuro?Elabore una lista.3. Desde que usted entró, su entrevistado, Max Hugo, ha estado revolviendo papeles, mirando su reloj y golpeteando elescritorio con sus dedos. Con base en lo que usted sabe sobre las entrevistas, adivina que Max está nervioso debido altrabajo que tiene pendiente. Describa en un párrafo cómo lidiaría con esta situación, de manera que Max pudiera ponertoda su atención en la entrevista (no puede reprogramar la entrevista para otro día).4. Escriba una serie de seis preguntas cerradas que traten sobre el tema del estilo de toma de decisiones para el gerente quese describe en el problema 2.5. Escriba una serie de seis preguntas abiertas que traten sobre el tema del estilo de toma de decisiones para el gerente quese describe en el problema 2.6. Examine la estructura de la entrevista que se presenta en la secuencia de las siguientes preguntas:1. ¿Cuánto tiempo ha estado en este puesto?2. ¿Cuáles son sus responsabilidades clave?3. ¿Qué informes recibe?4. ¿Cómo ve usted los objetivos de su departamento?5. ¿Cómo describiría su proceso de toma de decisiones?6. ¿Cómo se puede ofrecer un mejor soporte para ese proceso?7. ¿Con qué frecuencia toma esas decisiones?8. ¿A quién consulta cuando toma una decisión?9. ¿Cuál es la decisión que usted toma y que es esencial para el funcionamiento del departamento?a. ¿Qué estructura se utiliza? ¿Cómo puede saber?b. Reestructure la entrevista; cambie la secuencia de las preguntas (puede omitir algunas si es necesario). Etiquetelas preguntas reordenadas con el nombre de la estructura que utilizó.7. A continuación le mostramos el primer informe de una entrevista presentado por uno de los miembros de su equipo deanálisis de sistemas: “En mi opinión, la entrevista salió muy bien. El sujeto me dejó hablar con él durante una hora ymedia. Me contó toda la historia sobre la empresa, que fue muy interesante. También mencionó que las cosas no hancambiado tanto desde que empezó a trabajar en la empresa, hace aproximadamente 16 años. Nos reuniremos pronto otravez para terminar la entrevista, porque no tuvimos tiempo de ver las preguntas que preparé”.a. Critique en dos párrafos el informe de la entrevista. ¿Qué información crítica falta?b. ¿Qué información es superflua para el informe de la entrevista?c. Si lo que se informa es lo que realmente ocurrió, ¿tiene usted tres sugerencias para ayudar a su compañero de equipoa realizar una mejor entrevista la próxima vez?8. Cab Wheeler es un analista de sistemas recién contratado para trabajar en su grupo. Cab siempre ha sentido que loscuestionarios son un desperdicio. Ahora que usted debe realizar un proyecto de sistemas para MegaTrucks, Inc., unaempresa de transporte nacional con sucursales y empleados en 130 ciudades, desea utilizar un cuestionario para obteneralgunas opiniones sobre los sistemas actual y propuesto.a. Con base en lo que usted sabe sobre Cab y MegaTrucks, mencione tres razones convincentes de por qué debería usaruna encuesta para este estudio.b. Dados los meticulosos argumentos con los que usted cuenta, Cab está de acuerdo en usar un cuestionario perosolicita enérgicamente que todas las preguntas sean abiertas para no obligar a los encuestados. En un párrafo,persuada a Cab de que también son útiles las preguntas cerradas. Asegúrese de señalar las concesiones involucradascon cada tipo de pregunta.9. “Cada vez que llegan consultores aquí, reparten cuestionarios ridículos que no significan nada para nosotros. ¿Por quéno se molestan en personalizarlo, aunque sea un poco?”, pregunta Ray Dient, jefe de sistemas de emergencia. Usted estádiscutiendo sobre la posibilidad de empezar un proyecto de sistemas con la empresa Pohattan Power Company (PPC) deFar Meltway, New Jersey.a. ¿Qué pasos seguirá para personalizar un cuestionario estandarizado?b. ¿Cuáles son las ventajas de adaptar un cuestionario para una organización específica? ¿Cuáles son las desventajas?10. La siguiente es una pregunta de ejemplo en el borrador del cuestionario de Pohattan Power Company:He estado con la empresa:20 años a la fecha10-15 años a la fecha5-10 años a la fechamenos de un añoMarque la que se adapte mejor a su situación.www.xlibros.com
126 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNa. ¿Qué tipo de escala utiliza el autor de la pregunta?b. ¿Qué errores se cometieron al construir la pregunta y cuáles podrían ser las posibles respuestas?c. Reformule la pregunta para obtener resultados más claros.d. ¿En dónde debe aparecer la pregunta que escribió en el cuestionario?11. En el cuestionario de PPC también se incluye esta pregunta:Cuando llaman los clientes residenciales, siempre los guío hacia nuestro sitio Web para que obtengan una respuesta.Algunas veces Nunca Siempre Por lo general1 2 3 4a. ¿Qué tipo de escala se supone que utiliza?b. Reformule la pregunta y las posibles respuestas para obtener mejores resultados.12. La figura 4.EX1 es un cuestionario diseñado por un empleado de Green Toe Textiles, una empresa que se especializa en lafabricación de calcetines para caballeros. Di Wooly escribió el cuestionario debido a que, como gerente de las oficinasgenerales en Juniper, Tennessee, le preocupa la compra e implementación propuesta de un nuevo sistema computacional.Hola a todos los empleados¿Qué hay de nuevo? Según lo que escuché, estamos pensando comprar una nueva computadora.He aquí algunas preguntas que me gustaría que considerara cada uno de ustedes.a. ¿Cuánto tiempo ha utilizado la computadora anterior?b. ¿Con qué frecuencia se inhibe?c. ¿Quién la repara por usted?d. ¿Cuándo fue la última vez que sugirió una mejora al sistema de cómputo que se hayaempezado a usar? ¿Qué sugirió?e. ¿Cuándo fue la última vez que sugirió una mejora al sistema de cómputo que nunca sehaya utilizado? ¿Qué sugirió?f. ¿Usa una VDT, una impresora o ambas?g. ¿Qué tan rápido puede teclear?h. ¿Cuántas personas necesitan acceso a la base de datos con regularidad en su sucursal?¿Hay alguien que no esté utilizando la computadora ahora y que quisiera hacerlo?FIGURA 4.EX1Cuestionario desarrollado por DiWooly.a. Elabore una crítica en un enunciado para cada una de las preguntas anteriores.b. Critique en un párrafo la distribución y el estilo en términos del espacio en blanco utilizado, el espacio para lasrespuestas, la facilidad de responder, etcétera.13. Con base en las conjeturas que usted obtuvo, la Srta. Wooly intenta comprender el cuestionario, reformular y ordenar laspreguntas (use preguntas abiertas y cerradas) de manera que sigan las buenas prácticas y produzcan información útil paralos analistas de sistemas. Indique en seguida de cada pregunta que escriba si es abierta o cerrada; además escriba unenunciado en el que indique por qué escribió la pregunta de esa manera.14. Rediseñe el cuestionario que creó para la Srta. Wooly en el problema 13 para usarlo en correo electrónico. Escriba unpárrafo en el que diga qué cambios se necesitaron para ajustarse a los usuarios de correo electrónico.15. Rediseñe el cuestionario que creó para la Srta. Wooly en el problema 13 como una encuesta Web. Escriba un párrafo enel que diga qué cambios se necesitaron para ajustarse a los usuarios Web.www.xlibros.com
CAPÍTULO 4 • RECOPILACIÓN DE INFORMACIÓN: MÉTODOS INTERACTIVOS 127PROYECTOS EN GRUPO1. Con los miembros de su grupo haga una pequeña representación de una serie de entrevistas con varios usuarios desistemas en Maverick Transport. Cada miembro de su grupo deberá elegir uno de los siguientes roles: presidente de laempresa, director de tecnología de la información, despachador, agente de servicio al cliente o conductor de camión. Losmiembros del grupo que desempeñen roles de empleados de Maverick Transport deben tratar de describir con brevedadsus responsabilidades, objetivos y necesidades de información en su trabajo.El resto de los miembros del grupo deben desempeñar los roles de analistas de sistemas e idear preguntas deentrevistas para cada empleado. Si hay suficientes personas en su grupo, a cada analista se le puede asignar la entrevistade un empleado distinto. Los que desempeñen los roles de analistas de sistemas deben trabajar juntos para desarrollarpreguntas comunes, así como preguntas dirigidas a cada empleado individual. Asegúrese de incluir preguntas abiertas,cerradas y de sondeo en sus entrevistas.Maverick Transport trata de cambiar su tecnología obsoleta y poco confiable por una tecnología más reciente yconfiable. La empresa busca migrar de las terminales tontas conectadas a un equipo mainframe, ya que desea usar PCde alguna forma y también le interesa investigar un sistema de satélite para rastrear los fletes y los conductores. Ademásla empresa está interesada en buscar formas de reducir los inmensos requerimientos de almacenamiento y mejorar elacceso a los problemáticos formularios de varias hojas escritos a mano que se incluyen en cada envío.2. Lleve a cabo las cinco entrevistas en un ejercicio de juegos de rol. Si hay más de 10 personas en su grupo, permita quedos o más analistas hagan las preguntas.3. Escriba con su grupo un plan para una sesión JAD que sustituya a las entrevistas personales. Incluya los participantesrelevantes, el ambiente sugerido, etcétera.4. Use los datos de las entrevistas que obtuvo del ejercicio en grupo del proyecto 1 sobre Maverick Transport para reunirsecon su grupo y transformar el diseño de un cuestionario para los cientos de conductores de camiones que trabajan paraMaverick Transport. Recuerde que a Maverick le interesa implementar un sistema de satélite para rastrear los fletes y losconductores. Hay otros sistemas que podrían afectar a los conductores también. A medida que su grupo construya elcuestionario, considere el nivel de educación que pueda tener el conductor y cualquier restricción de tiempo que leimpida completar dicho formulario.5. Use los datos de las entrevistas que obtuvo del ejercicio en grupo del proyecto 1 sobre Maverick Transport para reunirsecon su grupo y diseñar un cuestionario Web o de correo electrónico para encuestar a los 20 programadores de la empresa(15 de los cuales se contrataron el año pasado) sobre sus habilidades, ideas para sistemas nuevos o mejorados, etcétera.Investigue las opciones de encuestas Web disponibles en SurveyMonkey.com. A medida que su grupo construya laencuesta para los programadores, considere lo que aprendió sobre los usuarios en las otras entrevistas, así como la visiónque tiene el director de tecnología de la información con respecto a la empresa.BIBLIOGRAFÍA SELECCIONADAAckroyd, S. y J. A. Hughes. Data Collection Context, 2da. edición. Nueva York: Addison-Wesley, 1992.Cash, C. J. y W. B. Stewart, Jr. Interviewing Principles and Practices, 12va. edición. Nueva York: McGrawHill/Irwin, 2007.Cooper, D. R. y P. S. Schindler. Business Research Methods, 10a. edición. Nueva York: McGrawHill/Irwin, 2007.Deetz, S. Transforming Communication, Transforming Business: Building Responsive and Responsible Workplaces. Cresskill,NJ: Hampton Press, 1995.Emerick, D., K. Round y S. Joyce. Exploring Web Marketing and Project Management. Upper Saddle River, NJ: Prentice HallPTR, 2000.Gane, C. Rapid System Development, Nueva York: Rapid System Development, 1987.Georgia Tech’s Graphic, Visualization, and Usability Center. “GVU WWW Survey through 1998”. Disponible en: http://www.cc.gatech.edu/gvu/user_surveys/survey-1998-10/. Último acceso: 15 de julio de 2009.Hessler, R. M. Social Research Methods. Nueva York: West, 1992.Joint Application Design. GUIDE Publication GPP-147. Chicago: GUIDE International, 1986.Peterson, R. A. Constructing Effective Questionnaires. Thousand Oaks, CA: Sage Publications, 1999.Strauss, J. y R. Frost. E-Marketing, 5ta. edición. Upper Saddle River, NJ: Pearson Prentice Hall, 2008.Wansink, B., S. Sudman y N. M. Radburn. Asking Questions: The Definitive Guide to Questionnaire Design—For Market Re-search, Political Polls, and Social and Health Questionnaires. Nueva York: Wiley, 2004.www.xlibros.com
128 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNE P I S O D I O 4CASO DE LA CPUALLEN SCHMIDT, JULIE E. KENDALL Y KENNETH E. KENDALLEscucharé ahora, pregunto después“He programado entrevistas preliminares con cinco personas clave. Como has estado muy ocupado con Visible Analyst, decidírealizar la primera ronda de entrevistas por mi cuenta”, le dice Anna a Chip al iniciar su reunión matutina.“Estoy de acuerdo”, dice Chip. “Sólo avísame cuando pueda participar. ¿Con quién vas a hablar primero? ¿Con Dot?”“Creo que eso no es ningún secreto”, contesta Anna. “Ella es imprescindible para el éxito del sistema. Cuando se trata dedecidir si un proyecto continuará o no, su palabra es la definitiva”.“¿Quién más?”, pregunta Chip.“Voy a ver con quién me refiere Dot, pero también haré una cita con Mike Crowe, el experto de hardware y mantenimiento;con Cher Ware, especialista de software; y con Paige Prynter, analista financiero de CPU”.“No te olvides de Hy Perteks”, dice Chip.“Cierto. El Centro de soporte de cómputo será importante para nuestro proyecto”, dice Anna. “Le llamaré para ver cuándoestá disponible”.Después de una breve conversación telefónica con Hy, Anna vuelve con Chip.“Se va a reunir conmigo más tarde el día de hoy”, confirma Anna.Al terminar con sus entrevistas, Anna se sienta en su escritorio a repasar las síntesis de las entrevistas y los memos que serecopilaron durante el verano. Hay varias pilas de papeles cuidadosamente archivados en carpetas expandibles.“Tenemos tanta información”, le comenta a Chip, “pero incluso así siento que estamos trabajando sólo con la punta deliceberg. No puedo comprender con claridad las dificultades de los miembros del cuerpo docente y el personal de investigación.¿Habrá problemas adicionales de los que no hayamos escuchado?”Chip mira hacia arriba al tiempo que deja el trabajo de intentar extraer puntos clave para definir los problemas. “Me pre-gunto si deberíamos realizar más entrevistas, o tal vez recopilar más documentos”, dice.“¿Pero cuántas entrevistas deberíamos realizar y a quién deberíamos entrevistar?”, le responde Anna. “Supón que entre-vistamos a varios miembros del personal y basamos el nuevo sistema en los resultados. Podríamos entrevistar a las personasequivocadas y diseñar un sistema para satisfacer sólo sus necesidades, omitiendo los problemas clave que la mayoría de losmiembros del cuerpo docente y del personal necesitan que se resuelvan”.“Entiendo lo que quieres decir”, responde Chip. “Tal vez deberíamos diseñar un cuestionario y entrevistar al personaldocente y al de investigación”.“¡Excelente idea!”, dice Anna. “¿Cómo deberíamos decidir qué preguntas incluir en la encuesta?”“Hablemos con algunas personas clave y basemos la encuesta en los resultados. Un buen punto inicial sería Hy Perteks,ya que siempre está hablando con el cuerpo docente y el personal. Le voy a llamar para programar una reunión”, dice Chip.Chip programó la reunión para la mañana siguiente. Esta reunión se llevaría a cabo en una sala de conferencias adyacenteal Centro de soporte de cómputo.“Gracias por aceptar esta cita con tan poca anticipación”, empieza Chip. “Estamos pensando en encuestar al cuerpo docentey al personal de investigación para obtener información adicional que nos ayudará a definir las cuestiones relacionadas con elsistema”.“Creo que es una gran idea”, responde Hy. “También me gustaría averiguar qué tipo de software debería estar disponibleen el Centro de soporte de cómputo y el tipo de capacitación que deberíamos ofrecer. Deberíamos obtener información sobrelos principales paquetes de software utilizados”, continúa Hy. “El software de creación Web y videos es esencial. Deberíamosaveriguar qué paquetes prefiere cada usuario y la versión de éstos, que también es importante conocer. Sé que muchos utilizanDreamweaver y que otros utilizan Freeway Pro. El software de bases de datos también varía, aunque muchos utilizan Access.Lo mismo ocurre con la creación de videos; Camtasia es el más popular”.“Otra cosa que podríamos averiguar es qué tipo de software especializado utilizan los grupos de miembros del cuerpodocente”, continúa Hy. “Muchas de las personas en el departamento de matemáticas utilizan Mathcad. Otros utilizan diversospaquetes de software para una variedad de cursos. Por ejemplo, los de ciencias de la información utilizan Visio, pero unoscuantos utilizan Visible Analyst. También he escuchado que vamos a recibir software de biología y astronomía. Y el departa-mento de arte utiliza equipos Mac casi en forma exclusiva. Muchos de los miembros del cuerpo docente se están involucrandomucho con software para construir imágenes, como Photoshop y Flash”.“Además de los paquetes de software y las versiones, ¿qué tipos de información deberíamos capturar?”, pregunta Chip.“Me gustaría saber el nivel de experiencia de cada persona”, responde Hy. “Sin duda algunos son principiantes, mientrasque otros tienen un buen conocimiento pero no han dominado todas las herramientas de un paquete específico. Algunos sonexpertos. Conocen el software por dentro y por fuera. Estoy interesado en los principiantes y usuarios intermedios, ya que de-beríamos ofrecer distintos niveles de capacitación para ellos. Saber quién es un experto ayuda también”.“¿Hay algo más que crea usted que debamos averiguar en la encuesta?”, pregunta Chip.www.xlibros.com
CAPÍTULO 4 • RECOPILACIÓN DE INFORMACIÓN: MÉTODOS INTERACTIVOS 129“La única otra cosa que me preocupa son los problemas que se producen cuando un miembro del cuerpo docente o delpersonal no utiliza el software”, responde Hy.“¿Qué quiere decir?”, pregunta Chip.“Bueno, supongan que una persona tiene el software pero lo instaló en forma incorrecta o aparece algún tipo de mensajede seguridad o relacionado con los derechos de acceso”, responde Hy. “He recibido algunas consultas sobre esta cuestión re-cientemente. Una persona dijo que estaban trabajando con Windows Vista y tenían su información en una unidad USB, y no lesconcedía derechos de acceso. Rhoda Booke es miembro del cuerpo docente en matemáticas y ha demostrado de manera con-sistente un interés en las cuestiones de hardware y software. Le he ayudado varias veces; siempre es amigable y agradecida.Creo que deberían entrevistarla”.“Gracias una vez más por toda su ayuda”, dice Chip. “Más adelante nos contactaremos con usted sobre los resultados dela encuesta”.Anna programa una reunión con Rhoda para explicarle la naturaleza del proyecto y por qué fue seleccionada comorepresentante del cuerpo docente. La reunión se sostuvo en una pequeña sala de conferencias en el departamento de ma-temáticas.“Nos gustaría conocer la perspectiva del cuerpo docente sobre los problemas relacionados con las computadoras y el soft-ware asociado”, dice Anna. “Nuestro objetivo es ofrecer al cuerpo docente los mejores recursos posibles con el menor númerode problemas”.“Estoy realmente encantada de formar parte del proyecto”, exclama Rhoda. “He utilizado software en el salón de clasesdurante 10 años aproximadamente, ¡y ha sido toda una experiencia de aprendizaje! Gracias a Dios que Hy está disponible comorecurso. Le he robado horas de su tiempo, pero ha valido bien la pena. Me siento mucho más productiva y los estudiantes utili-zan software que les ayuda a comprender el material con más detalle”.“Eso es bueno. Ahora, ¿ha estado experimentando algunas dificultades?”, pregunta Chip.“Bueno, es todo un reto familiarizarse con el software. Invertí una buena parte del verano pasado, cuando no estaba traba-jando en mi libro, en aprender cómo usar parte del software del salón de clases para álgebra y cálculo. Es grandioso pero quedéatrapada varias veces y tuve que pedir ayuda. Es necesario entender el software para preparar los planes de las lecciones y ex-plicar a los estudiantes cómo usarlo”.“¿Qué hay sobre problemas al instalar el software o hardware?”, pregunta Anna.“¡Oh si!”, exclama Rhoda. “Traté de instalar el software y todo salió bien hasta llegar a la parte en donde tenía que recibiractualizaciones de su sitio Web y hubo algunos problemas con el registro”, se ríe Rhoda.“Después hubo problemas de instalación”, continúa Rhoda. “Necesitaba averiguar qué instalar en la red y qué incluir enel disco duro local. En algunas laptops obtuvimos mensajes de error del tipo “Memoria insuficiente” y descubrimos que nuncase habían actualizado. El cuerpo docente del departamento de física tuvo el mismo problema”.“¿Hay alguna otra cuestión que usted considere importante para incluirla en nuestra encuesta para el personal docente yde investigación?”, pregunta Chip.“Sería conveniente saber quién utiliza el mismo software en distintos departamentos y qué software suministra cada dis-tribuidor. Tal vez si compramos muchos paquetes de un distribuidor podríamos obtener un mayor descuento por el software. Elpresupuesto de software del departamento ya está sobrecargado”, dice Rhoda.“Gracias por toda su ayuda”, dice Anna. “Si llega a pensar en alguna pregunta adicional que debamos incluir en la encuesta,no dude en llamarnos”.De vuelta en su oficina, los analistas empiezan a compilar una lista de las cuestiones que debe contener la encuesta.“En definitiva necesitamos preguntar sobre el software en uso y las necesidades de capacitación”, comenta Anna. “Tambiéndeberíamos tratar con los problemas que están ocurriendo”.“De acuerdo”, responde Chip. “Creo que deberíamos incluir preguntas sobre los paquetes de software, distribuidores,versiones, nivel de experiencia y cuestiones relacionadas con la capacitación. De lo que no estoy muy seguro es de cómo obte-ner información sobre los problemas a los que se enfrenta el personal docente y de investigación. ¿Cómo deberíamos abordaresas cuestiones?”“Bueno”, responde Anna, “deberíamos enfocarnos en las cuestiones con las que estén familiarizados. Podríamoshacer preguntas sobre el tipo de problemas que están ocurriendo, pero que en definitiva no sean técnicos. Y la encuestano debería hacer preguntas cuyas respuestas pudiéramos encontrar con facilidad, como “¿Quién es el distribuidor delsoftware?”“Entiendo”, responde Chip. “Dividamos las preguntas en categorías. Algunas serán preguntas cerradas y otras abiertas.Después hay que ver qué estructura debemos usar”.“Usaremos Zoomerang para administrar la encuesta en Web”, continúa Anna. “También usaremos recordatorios vía correoelectrónico sobre la fecha de terminación de la encuesta”.www.xlibros.com
130 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNEJERCICIOSEn los primeros tres ejercicios tendrá que visitar el sitio Web para obtener el texto de las entrevistas con los miembros del per-sonal de la CPU. Visite el sitio Web en www.pearsonhighered.com/kendall y busque las entrevistas de la CPU (“CPU Inter-views”).E-1. Analice las cinco entrevistas. En un párrafo describa el tipo de estructura que tenía cada entrevista.E-2. Elabore una lista de todas las entrevistas, de 1 a 5, y después escriba un párrafo para cada una de ellas en el que describalas formas en que Anna podría mejorar sus entrevistas para la próxima vez.E-3. Analice las preguntas utilizadas en las cinco entrevistas. Describa en un párrafo los tipos de preguntas utilizadas y sifueron o no apropiadas para obtener la información necesaria.E-4. De la lista de asuntos presentada anteriormente en el capítulo, seleccione las cuestiones que quedarían mejor como pre-guntas cerradas.E-5. De la lista de asuntos, seleccione las cuestiones que quedarían mejor como preguntas abiertas.E-6. En base a los ejercicios E-4 y E-5, diseñe un cuestionario que se envíe al cuerpo docente y al personal de investigación.E-7. Haga una prueba piloto de su cuestionario; deje que otros estudiantes de la clase lo llenen. En base a la retroalimentaciónde los estudiantes y a la capacidad que usted tenga de analizar los datos que reciba, revise su cuestionario.www.xlibros.com
131C A P Í T U L O 5Recopilación de información:métodos discretosOBJETIVOS DE APRENDIZAJEAl completar este capítulo usted podrá:1. Reconocer el valor de los métodos discretos para recopilar información.2. Comprender el concepto del muestreo para el análisis de los requerimientos humanosde información.3. Construir muestreos útiles de personas, documentos y eventos para determinar losrequerimientos humanos de información.4. Crear un guión (playscript) para que el analista pueda observar las actividades de tomade decisiones.5. Aplicar la técnica STROBE para observar e interpretar el entorno del encargado de lasdecisiones y su interacción con las tecnologías.Aunque con sólo estar presente en una organización el analista de siste-mas genera un cambio en la misma, hay métodos discretos “como elmuestreo, la investigación y la observación del comportamiento del encar-gado de las decisiones y su interacción con su entorno físico” menos per-turbadores que otras formas de averiguar los requerimientos humanos deinformación. Los métodos discretos se consideran insuficientes para recopilar informacióncuando se utilizan por sí solos, por lo que deben utilizarse junto con uno o varios de los méto-dos interactivos descritos en el capítulo anterior. A esto se le conoce como metodología mixta.Utilizar métodos interactivos y discretos para acercarse a la organización es una práctica inte-ligente mediante la cual podrá formarse un panorama más completo de los requerimientoshumanos de información.MUESTREOEl muestreo es el proceso de seleccionar sistemáticamente elementos representativos de unapoblación. Cuando se examinan con detalle estos elementos seleccionados, se asume que elanálisis revela información útil sobre la población en general.El analista de sistemas debe decidir con respecto a dos cuestiones clave. En primer lugarhay muchos informes, formularios, documentos de resultados, memos y sitios Web que laspersonas en la organización han generado. ¿A cuáles de ellos debe el analista poner atención ycuáles debe ignorar?En segundo lugar, muchos empleados se pueden ver afectados por el sistema de informa-ción propuesto. ¿A quiénes debería entrevistar el analista de sistemas?, ¿de quienes deberíabuscar información por medio de cuestionarios?, ¿a quienes debería observar en el proceso dellevar a cabo sus roles de toma de decisiones?www.xlibros.com
132 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNLa necesidad del muestreoUn analista de sistemas debe seleccionar una muestra representativa de datos para examinarlos o de personasrepresentativas para entrevistarlas, interrogarlas u observarlas por varias razones:1. Contener los costos.2. Agilizar el proceso de recopilación de datos.3. Mejorar la efectividad.4. Reducir la predisposición.Examinar cada hoja de papel, hablar con todos y leer todas las páginas Web de la organización sería un pro-ceso demasiado costoso para el analista de sistemas. Copiar informes, acaparar el valioso tiempo de los emplea-dos y duplicar encuestas inútiles representaría un gran gasto innecesario.El muestreo ayuda a acelerar el proceso mediante la recopilación de datos seleccionados, en vez de recopilartodos los datos de toda la población. Además, el analista de sistemas se evita la molestia de tener que analizar losdatos de toda la población.La efectividad en la recopilación de los datos también es un factor importante. El muestreo ayuda a mejo-rar la efectividad si se permite obtener información más precisa. Por ejemplo, puede hablar con menos emplea-dos, pero debe hacerles preguntas más detalladas. Además, si se entrevista a menos personas, el analista tendrátiempo para dar seguimiento a la información incompleta o faltante, con lo cual se mejorará la efectividad de larecopilación de datos.Por último, el muestreo permite reducir la predisposición durante el proceso de recopilación de datos. Porejemplo, cuando el analista de sistemas entrevista a un ejecutivo, éste se involucra con el proyecto, dado que cedióuna parte de su tiempo, y le gustaría que el proyecto triunfara. Cuando el analista de sistemas pide una opiniónsobre una característica permanente del sistema de información instalado, el ejecutivo tal vez provea una eva-luación predispuesta, ya que hay poca probabilidad de cambiar esa característica.Diseño del muestreoUn analista de sistemas debe seguir cuatro pasos para diseñar una buena muestra:1. Determinar los datos a recolectar o describir.2. Determinar la población a muestrear.3. Elegir el tipo de muestra.4. Decidir sobre el tamaño de la muestra.En las siguientes subsecciones describiremos estos pasos con detalle.DETERMINAR LOS DATOS A RECOLECTAR O DESCRIBIR El analista de sistemas necesita elaborar un plan realistaen cuanto a lo que debe hacer con los datos después de recolectarlos. Si se recopilan datos irrelevantes sedesperdicia tiempo y dinero en la recolección, el almacenamiento y el análisis de datos inútiles.Los deberes y responsabilidades del analista de sistemas en esta etapa consisten en identificar las variables,atributos y elementos de datos asociados a recopilar en la muestra. Hay que considerar los objetivos del estudio,así como el tipo de método de recopilación de datos (investigación, entrevistas, cuestionarios, observación) a uti-lizar. Éste y los siguientes capítulos describen con más detalle los tipos de información que debe buscar al usarcada uno de estos métodos.DETERMINAR LA POBLACIÓN A MUESTREAR A continuación, el analista de sistemas debe determinar cuál es lapoblación; en caso de muestrear datos rigurosos, necesita decidir, por ejemplo, si basta con los últimos dos meseso si se requiere todo un año de informes para el análisis.De manera similar, al decidir a quién va a entrevistar, el analista de sistemas tiene que determinar si la po-blación incluirá uno o todos los niveles de la organización, o incluso si debe considerar a clientes, distribuidores,proveedores o competidores. En los capítulos sobre entrevistas, cuestionarios y observación exploraremos conmás detalle estas decisiones.ELEGIR EL TIPO DE MUESTRA. Como se indica en la figura 5.1, el analista de sistemas puede usar uno de cuatrotipos principales de muestras: de conveniencia, intencionada, simple y compleja. Las de conveniencia sonmuestras sin restricciones ni probabilidades. Una muestra de este tipo resultaría de que el analista de sistemaspublicara un aviso en la intranet de la empresa para pedir que los interesados en trabajar con los nuevos informeswww.xlibros.com
CAPÍTULO 5 • RECOPILACIÓN DE INFORMACIÓN: MÉTODOS DISCRETOS 133Los elementos de lamuestra se seleccionandirectamente sinrestriccionesDe conveniencia Simple aleatoriaLos elementos de lamuestra se seleccionande acuerdo a ciertoscriteriosCompleja aleatoria(sistemática, estratificaday de conglomerados)IntencionadaNo se basa en la probabilidad Se basa en la probabilidadEl analista desistemas debe usaruna muestra complejaaleatoria si fueraposible.FIGURA 5.1Cuatro tipos principales demuestras disponibles para elanalista.de rendimiento de ventas fueran a una reunión a la 1 P.M. el martes 12. Sin duda es la más fácil de preparar, peroes también la menos confiable. Una muestra intencionada se basa en el juicio.El analista de sistemas puede elegir un grupo de individuos que parezcan expertos y estén interesadosen el nuevo sistema de información. Aquí, el muestreo se basa en los criterios de conocimiento e interéssobre el nuevo sistema, pero de todas formas es un muestreo sin probabilidad. Por ende, el muestreo in-tencionado es confiable sólo en un nivel moderado. Si elige realizar un muestreo aleatorio simple, necesitaobtener una lista numerada de la población para asegurar que cada documento o persona en la poblacióntenga la misma probabilidad de ser seleccionada. A menudo este paso no es práctico, en especial cuando elmuestreo involucra documentos e informes. Las muestras aleatorias complejas más apropiadas para el ana-lista de sistemas se obtienen mediante 1) muestreo sistemático, 2) muestreo estratificado y 3) muestreo deconglomerados.Por ejemplo, en el método más simple de muestreo de probabilidad –el sistemático–, el analista de sistemasdebe elegir entrevistar a cada k-ésima persona en una lista de empleados de la empresa. Este método tieneciertas desventajas: no es conveniente utilizarlo para seleccionar cada k-ésimo día para una muestra, debido alpotencial problema de periodicidad; tampoco sería apropiado aplicarlo a una lista ordenada (por ejemplo, unalista de bancos, desde el más pequeño hasta el más grande), ya que habría una predisposición.El muestreo estratificado tal vez sea el más importante para el analista de sistemas. La estratificaciónes el proceso de identificar subpoblaciones o estratos, para después seleccionar objetos o personas con losque se realicen muestras de estas subpoblaciones. A menudo, la estratificación es esencial si el analista desistemas desea recopilar datos con eficiencia. Por ejemplo, si desea buscar opiniones de un amplio rangode empleados en distintos niveles de la organización, el muestreo sistemático seleccionaría un número despro-porcionado de empleados del nivel de control operacional. Una muestra estratificada compensaría esta situa-ción. También se utiliza la estratificación cuando el analista de sistemas desea usar distintos métodos pararecolectar datos de distintos subgrupos. Por ejemplo, tal vez quiera utilizar una encuesta para recopilar datosde los gerentes de nivel medio, pero podría preferir usar entrevistas personales para recopilar datos similares delos ejecutivos.Algunas veces el analista de sistemas debe seleccionar un grupo de personas o documentos para estudiarlos.A este proceso se le conoce como muestreo de conglomerados. Suponga que una organización tiene 20 centrosde soporte esparcidos en todo el país. Tal vez usted quiera seleccionar uno o dos de estos centros de soporte bajola suposición de que son comunes con el resto.DECIDIR SOBRE EL TAMAÑO DE LA MUESTRA En definitiva, si todos en la población vieran el mundo de lamisma forma, o si cada uno de los documentos de una población tuviera exactamente la misma informaciónque cualquier otro, sería suficiente una muestra con tamaño de uno. Como no es así, es necesario establecer untamaño de muestra mayor, pero menor que el de la población.Es importante recordar que, en el muestreo, el número absoluto es más importante que el porcentajede la población: es posible obtener resultados satisfactorios muestreando 20 personas tanto de 200 como de2,000,000.www.xlibros.com
134 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNLa decisión sobre el tamaño de las muestrasA menudo, el tamaño de las muestras depende del costo o el tiempo requerido por el analista de sistemas, o in-cluso del tiempo disponible de las personas en la organización. Esta subsección ofrece varios lineamientos paradeterminar el tamaño de muestra requerido en condiciones ideales; por ejemplo, para determinar el porcentaje deformas de entrada que contienen errores, o qué proporción de personas hay que entrevistar.Para definir el tamaño de muestra requerido, el analista de sistemas debe seguir siete pasos, algunos de loscuales implican juicios subjetivos:1. Determinar el atributo (en este caso, el tipo de errores a buscar).2. Localizar la base de datos o los informes en los que se pueda encontrar el atributo.3. Examinar el atributo. Estimar p, la proporción de la población que cuenta con el atributo.4. Tomar la decisión subjetiva en relación con la estimación del intervalo aceptable, i.5. Elegir el nivel de confianza y buscar el coeficiente de confianza (valor z) en una tabla.6. Calcular p, el error estándar de la proporción, de la siguiente manera:p = iz7. Determinar el tamaño de muestra necesario, n, mediante la siguiente fórmula:n = p11 - p 22p+ 1Desde luego, el primer paso es determinar el atributo a muestrear; después puede averiguar dónde se almacenanestos datos: una base de datos, un formulario, un informe, etcétera.Es importante estimar p, la proporción de la población que tiene el atributo, para establecer el tamaño demuestra apropiado. Muchos libros de texto sobre análisis de sistemas sugieren utilizar un heurístico de 0.25 parap(1 - p). Este valor casi siempre produce muestra de tamaño mayor que el necesario, ya que 0.25 es el valormáximo de p(1 - p), que ocurre sólo cuando p = 0.50. Cuando p = 0.10, como es más comúnmente el caso,p(1 - p) se convierte en 0.09, con lo cual se obtiene un tamaño de muestra mucho menor.Los pasos 4 y 5 implican decisiones subjetivas. La estimación de intervalo aceptable de ±10 significa queestá dispuesto a aceptar un error de no más de 0.10 en cualquier dirección de la proporción actual, p. El nivel deconfianza es el grado deseado de certidumbre; por ejemplo, del 95 por ciento. Una vez elegido el nivel de con-fianza, puede buscar el coeficiente de confianza (también conocido como valor z) en una tabla como la que seencuentra en este capítulo.Los pasos 6 y 7 completan el proceso al recibir los parámetros de los pasos 3 al 5 e introducirlos en dosecuaciones para resolver el tamaño de muestra requerido.EjemploVamos a ilustrar con un ejemplo los pasos mencionados. Suponga que la empresa A. Sembly, que sededica a la fabricación de productos de estantería, le pide determinar el porcentaje de pedidos quecontienen errores. Usted acepta hacer este trabajo y lleva a cabo los siguientes pasos:1. Determina que va a buscar pedidos con errores en nombres, direcciones, cantidades o números demodelos.2. Localiza las copias de los formularios de pedido de los últimos seis meses.3. Examina algunos de los formularios de pedido y concluye que sólo cerca del 5 por ciento (0.05)contiene errores.4. Juzga que la estimación de intervalo aceptable será de ±0.02.5. Selecciona un nivel de confianza de 95 por ciento. Busque el coeficiente de confianza (valor z) en lafigura 5.2. El valor z es igual a 1.96.6. Calcula p de la siguiente manera:p = iz = 0.021.96 = 0.01027. Determina el tamaño de muestra necesario n de la siguiente manera:n = p11 - p 22p+ 1 = 0.0510.95 210.0102 2 10.0102 2 + 1 = 458www.xlibros.com
CAPÍTULO 5 • RECOPILACIÓN DE INFORMACIÓN: MÉTODOS DISCRETOS 13599% 2.5898 2.3397 2.1796 2.0595 1.9690 1.6580 1.2850 0.67Nivel deconfianzaCoeficientede confianza(valor z)Primero hay quedecidir sobre elnivel de confianza...... después hayque buscar elvalor z.FIGURA 5.2Podemos utilizar una tabla delárea bajo una curva normal parabuscar un valor, una vez que elanalista de sistemas decida sobreel nivel de confianza.Entonces, la conclusión es establecer el tamaño de la muestra en 458. En definitiva, un nivel mayor de confianza ouna estimación de intervalo aceptable menor requerirían una muestra mayor. Si mantenemos igual la estimacióndel intervalo aceptable pero aumentamos el nivel de confianza al 99 por ciento (con un valor z de 2.58), eltamaño de muestra necesario se convierte en 1.827, una cifra mucho mayor que los 458 pedidos que habíamosdecidido muestrear en un principio.O P O R T U N I D A D D E C O N S U L T O R Í A 5 . 1A la caza de una muestra“¿Es genuina o artificial? ¿Quién lo hubiera pensado, inclusohace cinco años!”, exclama Sam Pelt, un peletero propietario detiendas en Nueva York, Washington, D.C., Beverly Hills y Copen-hague. Sylva Foxx, analista de sistemas y propietaria de una em-presa de consultoría, está hablando con Sam por primera vez.Actualmente, P & P, Ltd. (Pelt y Pelt hijo) utiliza una PC para llevarla lista de correo de clientes selectos, las cuentas por pagar, lascuentas por cobrar y la nómina.Sam está interesado en tomar ciertas decisiones estratégicasque afectarán la compra de productos para sus cuatro tiendas depieles. Cree que, aunque la computadora podría ayudar, tambiénhay que considerar otras metodologías.Sam continúa: “Creo que deberíamos hablar con todos losclientes cuando entren a la tienda, conocer sus opiniones. A algunosles indigna el uso de pieles de animales en peligro de extinción;tienen una orientación ambientalista. Si de esa manera pueden sal-var a un cachorro, eligen las imitaciones. Algunos incluso prefierenlas imitaciones y les llaman ‘pieles divertidas’. Y yo puedo cobrarcasi lo mismo por una buena imitación.“Pero hay un riesgo: si me alejo demasiado de mis proveedoresde pieles, tal vez no obtenga lo que quiera cuando lo necesite. Ellosven a los distribuidores de pieles de imitación como si fueran gusa-nos, ¡peores que polillas! Si hago negocios con ellos, tal vez losdistribuidores de pieles auténticas ya no quieran hablarme. Puedenser animales. Por otro lado, me siento raro en cuanto a exhibir imi-taciones en mis tiendas. Durante años nos hemos enorgullecido detener sólo artículos genuinos”.Sam continúa, en un monólogo casi continuo: “Quiero hablarcon todos y cada uno de los empleados, también”.Sylva lo mira con disimulo y empieza a interrumpir: “Pero esollevará meses y las compras se derrumbarán por completo a menosque sepan con prontitud qué...”.Pelt la interrumpe: “No me importa cuánto tarde, mientrasobtengamos respuestas correctas. Pero tienen que ser las correctas.Me siento como un leopardo sin sus manchas por no saber cómoresolver este dilema de las pieles de imitación”.Sylva habla con Sam Pelt un poco más y después termina laentrevista diciendo: “Voy a comentarlo con los otros analistas enla oficina y le haré saber nuestra resolución. Creo que podemosaventajar a los otros peleteros si utilizamos software que nos ayude aobtener muestras de las opiniones, en lugar de cazar a los clientespara que nos digan lo que piensan, pero le haré saber lo que diganlos demás. Lo que puedo asegurarle es que si podemos obtenermuestras sin tener que hablar con todos antes de tomar una deci-sión, usted saldrá ganando”.Como uno de los analistas de sistemas que forma parte de laempresa de Sylva Foxx, sugiera algunas formas en las que Sam Peltpueda usar software en su PC para obtener muestras adecuadas delas opiniones de sus clientes, gerentes de las tiendas, compradoresy cualquier otra persona que usted considere imprescindible paratomar la decisión estratégica en relación con el abastecimiento depieles de imitación en lo que siempre ha sido una tienda de pielesgenuinas. Sugiera un tipo de muestra para cada grupo y justifíquelo.Usted estará restringido por la necesidad de actuar con rapidez paraseguir siendo competitivo, la necesidad de actuar sigilosamentepara que los peleteros de la competencia no se enteren de que ustedestá recopilando datos, y la necesidad de mantener los costos de larecopilación de datos en un nivel razonable.www.xlibros.com
136 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNDETERMINACIÓN DEL TAMAÑO DE LAS MUESTRAS PARA ENTREVISTAS No hay fórmulas mágicas para ayudar alanalista de sistemas a establecer el tamaño de la muestra para entrevistas; la variable primordial en este caso esel tiempo que tarda una entrevista. Una entrevista profunda y una de seguimiento consumen mucho tiempo, tantodel entrevistador como del participante.Una buena regla general es entrevistar a por lo menos tres personas en todos los niveles de la organización, ya por lo menos una de cada una de las áreas funcionales (como vimos en el capítulo 2) que trabajen directamentecon un sistema nuevo o actualizado. Recuerde también que no es necesario entrevistar a más personas sólo por-que se trate de una empresa más grande. Si el muestreo estratificado se lleva a cabo en forma apropiada, pocosindividuos representarán de manera adecuada a toda la organización.INVESTIGACIÓNInvestigar es descubrir y analizar información. Al investigar la evidencia en una organización, el analista actúacomo Sherlock Holmes, el famoso detective.A medida que el analista de sistemas trabaja para entender a los usuarios, su organización y sus requerimien-tos de información, debe examinar los distintos tipos de datos “duros” que ofrecen información no disponible porcualquier otro medio de recopilación. Estos datos revelan dónde ha estado la organización y hacia dónde creensus miembros que se dirige. Para formarse una imagen precisa, el analista necesita examinar datos tanto cuanti-tativos como cualitativos.Análisis de documentos cuantitativosHay muchos documentos cuantitativos disponibles para su interpretación en cualquier empresa: informes em-pleados para la toma de decisiones, informes de rendimiento, registros y variados tipos de formularios. Todosestos documentos tienen un propósito y una audiencia específicos.INFORMES PARA LA TOMA DE DECISIONES El analista de sistemas requiere acceso a algunos de los documentosutilizados para dirigir la empresa. A menudo consisten en informes sobre el estado del inventario, las ventas o laproducción. Muchos de ellos son simples y su función es dar apoyo a una acción rápida. Por ejemplo, un informede ventas puede sintetizar la cantidad que se vendió y el tipo de ventas. Además, los informes de ventas podríanincluir resultados gráficos para comparar los ingresos y las entradas durante ciertos periodos. Dichos informespermiten que el encargado de tomar las decisiones reconozca fácilmente las tendencias.Los informes de producción incluyen los costos recientes, el inventario actual, la mano de obra reciente y lainformación de la planta. Además de estos informes clave, los encargados de tomar las decisiones utilizan mu-chos informes sintetizados para proveer información de apoyo, detectar las excepciones a las ocurrencias norma-les y obtener vistas generales estratégicas de los planes de la organización.INFORMES DE RENDIMIENTO La mayoría de los informes de rendimiento consisten en una comparación entre elrendimiento actual y el esperado. Una función importante de ellos es medir la brecha entre el rendimiento actualy el esperado. También es importante poder determinar si ese hueco se está ensanchando o estrechando comouna tendencia general en cualquier rendimiento en evaluación. En la figura 5.3 se muestra una clara mejoría en elrendimiento de las ventas durante un periodo de dos a tres meses. Es probable que el analista quiera observar sihay una medición del rendimiento disponible y adecuada para las áreas clave de la organización.REGISTROS Los registros proveen actualizaciones periódicas de lo que ocurre en la empresa. Si el encargado delregistro es cuidadoso y lo actualiza en forma oportuna, puede proveer mucha información útil para el analista.En la figura 5.4 se muestra un registro de pagos que se llenó a mano para la renta de un apartamento. Hay variasformas en que el analista puede inspeccionar un registro, muchas de las cuales son indicativas de su capacidadde uso:1. Revisar errores en montos y totales.2. Buscar oportunidades para mejorar el diseño de los formularios de registro.3. Observar el número y tipo de transacciones.4. Estar al tanto de los casos en los que la computadora pueda simplificar el trabajo (por ejemplo, los cálculosy otras formas de manipular los datos).FORMULARIOS DE CAPTURA DE DATOS Antes de disponerse a cambiar los flujos de información de laorganización, hay que entender el sistema que está en uso en ese momento. Tal vez sea conveniente que usted owww.xlibros.com
CAPÍTULO 5 • RECOPILACIÓN DE INFORMACIÓN: MÉTODOS DISCRETOS 137Número delotesproducidosNúmero delotesrechazadosPorcentajerechazadoMonto que sealeja delobjetivo del 5%Semana2/2 245 19 7.8 2.82/9 229 19 8.3 3.32/16 219 14 6.3 1.32/23 252 13 5.2 0.23/2 245 13 5.3 0.33/9 260 13 5.0 * * *3/16 275 14 5.1 0.13/23 260 13 5.0 * * *3/30 260 13 5.0 * * *4/6 244 12 4.9 * * *4/13 242 11 4.5 * * *4/20 249 11 4.4 * * *4/27 249 11 4.4 * * ** * * indica que se cumplió o excedió el objetivo de < 5%... y las tendenciasLos informes derendimientomuestran losobjetivos ...FIGURA 5.3Un informe de rendimiento quemuestra mejorías.O P O R T U N I D A D D E C O N S U L T O R Í A 5 . 2Una rosa con otro nombre... o Calidad mejor que cantidad“Creo que tenemos lo necesario. Llevé a cabo el muestreo deestados financieros, cifras de ventas de todas las sucursales, mermasde todas las tiendas, todo. Con esos números tenemos que ser capa-ces de mantener a Fields en el campo... o por lo menos a la cabezadel negocio de las florerías. Incluso podremos enseñarle al mismoSeymour Fields cómo su nuevo sistema de computación puede ge-nerar todo esto”, expresa Rod Golden, un analista de sistemas juniorque trabaja para un despacho de consultoría mediano.La empresa, bajo la supervisión del analista líder Clay Potts,ha estado trabajando en un proyecto de sistemas para Fields, unacadena de 15 exitosas florerías y establecimientos de flores parainteriores. En cada una de tres ciudades del Medio Oeste de EstadosUnidos hay cinco tiendas de Fields.“Aunque por el momento es una empresa floreciente, que-remos ramificarnos a por lo menos seis estados”, indica SeymourFields, el propietario. “Quiero cosechar los beneficios de toda lafelicidad que hemos estado sembrando. Y creo que podemoslograrlo basándonos en mis corazonadas con respecto a cuál esla mejor temporada para adquirir flores en los mercados euro-peos de los que ya compramos, y luego podar nuestras adquisi-ciones”.“Durante los últimos tres años, he escrito montones de memosa nuestros gerentes acerca de este plan; ellos también han escritouna buena cantidad de ellos. Creo que pronto estaremos listos paraplantar este proyecto”, continua Seymour, describiendo un futurocolor de rosa para Fields.“Estoy de acuerdo”, dice Rod. “Cuando regrese de analizarestas cifras”, agrega, señalando el altero de material que ha desen-terrado de las oficinas de Fields, “le entregaré resultados”.Tres semanas después, Rod regresa a hablar con Clay sin mu-cha determinación. “No sé qué concluir de todo esto. No doy con loque está produciendo el crecimiento de la compañía, ni con la formaen que están administrándolo. Han estado creciendo, pero aunquehe analizado todas las cifras, no encuentro un patrón todavía.”Clays lo escucha con paciencia y dice: “Sin embargo, has he-cho que me brote una idea. Lo que se requiere es polinización cru-zada y mucho oxígeno. Tenemos que escarbar más. ¿Examinastetodo, menos el fondo?”Rod responde, desconcertado: “No... eh... ¿a qué te refieres?”¿Cómo puede Clay Potts explicarle de manera sutil a RodGolden que es importante analizar tanto los datos cuantitativoscomo la información cualitativa para elaborar una evaluación apro-piada del potencial de Fields para convertirse en una empresa másfructífera? En un párrafo, recomiende documentos específicos aleer. Enumere los pasos específicos que Rod debe seguir para eva-luar los documentos de información cualitativa obtenidos de Fields.Escriba un párrafo que explique cómo los documentos cualitativosayudan a presentar un panorama exhaustivo del éxito de Fields.www.xlibros.com
138 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNREGISTRO DE PAGO: Tot. 31175/0 + 81299 + Renta = 910TOTAL DE PAGO INICIAL REQUERIDO:855 55 910 H/S dep. 4Fechavenc.FechapagoReciboNúm.Pago almediodía Totalrenta Segu-ridad Lim-pieza 3170081299Otros Montopagado SaldorestanteImp.FechasMontoDescr.Mont.TV 10 /3 MO ! 8/28 8/28 106642 9/30 1031.32 202 115 44.20 25414.8215 1430.52 010/1 10/ 3 107503 10/31 910 910 011 / 1 11/ 1 10935 11/ 16 485.28 485.28 0C1H/S9-16 11/17 11/8 11200 11/ 23 212.31 212.31 0Cobrar 1 MES 11/24ProrrateadoHay que crear H/Spara reembolsardepósito.EDIFICIO # NOMBREFecha original en que se mudó d Exp. x #Rentabase Refri-gerador Mue-blesTotalrenta Segu-ridad Lim-pieza31700Imp.Tarifadiaria8-28 igual 1Kendall 1 eroNOMBRE PROY. # FIRMA CLAVEPOTENCIAL RENTA 1175/0 81299PRORRATEOA/C Ser-vicios HMSR T.V. Muca-ma 31175/0 81299 Días TotalesPOTENCIALDEPÓSITODepósitosSólo memo 31175/0OAK. FC 562H/Srent 30. 33 1.30 91039200 115 31.63 3401430.5215 .00121 . 325 . 20Trate de detectarlos lugares donde lacomputadora puedasimplificar el trabajo.Observe el número ytipo de transaccionesVerifique los errores.Busqueoportunidades demejorar el diseño.FIGURA 5.4Un registro de pago que se llenó amano.uno de los miembros de su equipo recopilen y clasifiquen una copia en blanco de cada formulario (oficial y nooficial) en uso (algunas veces las empresas ya cuentan con alguien encargado de administrar los formularios; estapersona será su primera fuente para saber qué formularios se utilizan).Podemos comparar los formularios en blanco, junto con sus instrucciones de llenado y distribución, con losformularios llenos, para detectar alguna consistencia en cuanto a los elementos de datos que se hayan dejado enblanco, verificar si las personas que se supone deben recibir los formularios en realidad los están recibiendo ydeterminar si siguen los procedimientos estándar para usar, almacenar y desechar los formularios. Recuerde im-primir cualquier formulario basado en Web que los usuarios tengan que imprimir. Como alternativa puede iden-tificar y almacenar las versiones electrónicas de los formularios que se puedan enviar a través de Web o correoelectrónico, para almacenarlas en una base de datos e inspeccionarlas después.Una vez que haya creado un catálogo de formularios que lo ayuden a entender el flujo de información que seutiliza en la empresa en ese momento, lo que debe hacer a continuación es:1. Recolectar ejemplos de todos los formularios en uso, sin importar que estén aprobados o no por la empresa(formularios oficiales vs. formularios clandestinos).2. Observar el tipo de formulario (impreso dentro de la empresa, escrito a mano, generado por computadoradentro de la empresa, formularios en línea, formularios para llenar en Web, formularios que se imprimen ycompran de manera externa, etcétera).3. Documentar el patrón de distribución deseado.4. Comparar el patrón de distribución deseado con quienes realmente recibieron el formulario.Aunque este procedimiento lleva tiempo, es útil. Otra metodología es muestrear los formularios de capturade datos que ya estén llenos. Recuerde verificar las bases de datos que almacenan los datos de los consumidoresal muestrear la entrada de las transacciones de comercio electrónico. El analista debe tener en cuenta muchaswww.xlibros.com
CAPÍTULO 5 • RECOPILACIÓN DE INFORMACIÓN: MÉTODOS DISCRETOS 139preguntas específicas, como se muestra en la figura 5.5. Éstas incluyen los siguientes aspectos de HCI en rela-ción con la capacidad de uso, la estética y la utilidad:1. ¿Se llenó el formulario en su totalidad? Si no fue así, ¿qué elementos se omitieron?, ¿hubo consistencia enlos elementos omitidos? ¿Por qué?2. ¿Hay formularios que nunca se usaron? ¿Por qué? (Revise el diseño y la precisión de cada formulario encuanto a su supuesta función).3. ¿Se enviaron todas las copias de los formularios a las personas apropiadas o se archivaron en formaapropiada? De no ser así, ¿por qué no? Las personas que deben acceder a los formularios en línea, ¿puedenhacerlo?4. Si hay un formulario en papel que se ofrece como alternativa a un formulario basado en Web, compare lastasas de compleción de ambos.5. ¿Se utilizan formularios “no oficiales” con regularidad? (Su uso podría indicar un problema en losprocedimientos estándar o batallas políticas en la organización).Fecha Nombre de la tienda Nombre de la tiendaProducto Unidades Producto UnidadesLeche (1/2 galones) Leche (litros)Entera Entera2% 2%1% 1%Descremada DescremadaSuero de leche Suero de lecheChocolate ChocolateYogurtNatural PiñaVainilla Manzana holandesaDurazno PlátanoArándano Fruta mixtaMora FrambuesaFresa LimónHeladoCuartos de litro de lujo Litros de lujo1/2 galones de lujo Cuartos PremiumMiniaturas descremadasLitros PremiumSolicitado por (número de empleado) Total de cajas ordenadasRazón de la baja existenciaNúmero de conductorNúmero de rutaReabastecimiento de productoslácteos con poca existenciaUn formulario oficialpuede abrumar a laspersonas al pedirdemasiadainformación.Tal vez el formulariono tenga un ordenlógico.¿Se requiererealmente eltotal?Surgen formularios“clandestinos” parasimplificar elproblema.Tienda Fecha ConductorProducto agotado Cajas necesariasIniciales del gerente de lácteosFIGURA 5.5Preguntas por hacer sobre losformularios oficiales yclandestinos que ya estén llenos.www.xlibros.com
140 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNAnálisis de los documentos cualitativosLos documentos cualitativos incluyen mensajes de correo electrónico, memorandos, anuncios en tableros y áreasde trabajo, páginas Web, manuales de procedimientos y de políticas. Muchos de estos documentos contienengran cantidad de detalles que revelan las expectativas de los autores con respecto al comportamiento de los de-más, junto con las formas en que los usuarios esperan interactuar con las tecnologías de información.Aunque muchos analistas de sistemas son aprensivos en cuanto al análisis de documentos cualitativos, notienen razón para serlo. Varios lineamientos pueden ayudar a los analistas a adoptar un enfoque sistemático paraeste tipo de análisis; muchos se relacionan con los aspectos afectivos, emotivos y motivacionales de HCI, asícomo las relaciones interpersonales en la organización.1. Examine los documentos en busca de metáforas clave o que sirvan como guía.2. Busque discrepancias entre internos contra externos o una mentalidad del tipo “nosotros contra ellos”.3. Haga una lista de los términos que caractericen el bien o el mal y que aparezcan varias veces en losdocumentos.4. Busque el uso de mensajes y gráficos significativos que se publiquen en áreas comunes o en páginas Web.5. Reconozca un sentido del humor, si es que lo hay.El proceso de examinar documentos en busca de metáforas clave o de guía se lleva a cabo debido a que ellenguaje da forma al comportamiento; por ende, las metáforas que empleamos son imprescindibles. Por ejem-plo, una organización que habla sobre los empleados como “parte de una gran máquina” o “los engranes de unarueda” podría estar adoptando un punto de vista orientado a la mecánica. Observe que la metáfora de guía en elmemo de la figura 5.6 es: “Somos una gran familia feliz”. El analista puede usar esta información para predecirlos tipos de metáforas que serán persuasivas en la organización. En definitiva, si un departamento está peleandocon otro, puede ser imposible obtener cooperación en un proyecto de sistemas a menos que se resuelvan las polí-ticas en forma satisfactoria. El proceso de evaluar el sentido del humor provee una forma fácil y rápida de medirmuchas variables de HCI, interpersonales y organizacionales, incluyendo la subcultura a la que pertenece unapersona y el tipo de moral existente.MEMOS Además de los cinco lineamientos anteriores, el analista también debe considerar quién envía losmemos y quién los recibe. Por lo general, en una organización, la mayor parte de la información fluye haciaabajo y en sentido horizontal, en vez de hacerlo hacia arriba, por lo que se envían muchos mensajes por medioMEMOPara: Personal nocturno del centro de soporteDe: S. Leep, gerente del turno nocturnoFecha: 15/2/2010Asunto: Fiesta de presentación hoy en la nocheEs un placer dar la bienvenida a dos nuevos miembros delpersonal del centro de soporte 11-7: Twyla Tine y Al Knight.Estoy seguro de que disfrutarán su trabajo aquí. Estar juntosen altas horas de la madrugada nos hace sentir como unagran familia feliz. Recuerden que para sus descansos en lanoche algunos de los muchachos trajeron comida. Puedenservirse lo que quieran de lo que tenemos en el salón dedescanso; bienvenidos al clan, Twyla y Al.FIGURA 5.6El análisis de los memos ayuda aconocer las metáforas que guían elpensamiento de la organización.www.xlibros.com
CAPÍTULO 5 • RECOPILACIÓN DE INFORMACIÓN: MÉTODOS DISCRETOS 141de los sistemas de correo electrónico a grupos de trabajo e individuos. Los memos revelan un diálogo activo ycontinuo en la organización. El análisis del contenido de los memos le proveerá una clara idea de los valores,posturas y creencias de los miembros de la organización.ANUNCIOS O PANCARTAS EN TABLEROS DE ANUNCIOS O EN ÁREAS DE TABAJO Aunque los anuncios puedenparecer secundarios en comparación con lo que pasa en la organización, sirven como refuerzos sutiles de valorespara quienes los leen. Los lemas como “Calidad por siempre” o “La seguridad es primero” dan al analista unaidea de la cultura oficial de la organización.SITIOS WEB CORPORATIVOS El analista también debe examinar los sitios Web que se utilizan para el comerciode negocio a consumidor (B2C), así como los que se utilizan para las transacciones de negocio a negocio(B2B). Examine el contenido de las metáforas, el humor, el uso de las características de diseño (color, gráficos,animación e hipervínculos), además del significado y la claridad de los mensajes que se proporcionen. Piense enel sitio Web desde tres perspectivas distintas: técnica, estética y gerencial. ¿Hay discrepancias entre los objetivosestablecidos de la organización y lo que se presenta al espectador? ¿Qué grado de personalización hay disponible en elsitio Web para cada usuario? ¿Qué tanto se puede personalizar el sitio Web? Si no va a diseñar sitios de comercioelectrónico para la organización, ¿en qué afecta lo que usted ve en su sitio o sitios Web a los sistemas que estáinvestigando? Recuerde tomar notas del nivel de interactividad del sitio o sitios Web, la accesibilidad de losmensajes y el nivel de seguridad.MANUALES Los manuales de la organización son otros documentos cualitativos que el analista debe examinar.Entre éstos se incluyen los manuales para los procedimientos de operación del equipo de cómputo y los manualesen línea. Hay que analizar los manuales con base en los cinco lineamientos mencionados anteriormente. Recuerdeque los manuales presentan lo “ideal”, la forma en que se espera que se comporten las máquinas y las personas.Es importante recordar que raras veces se mantienen actualizados los manuales impresos y, de hecho, algunasveces quedan relegados en alguna repisa.MANUALES DE POLÍTICAS El último tipo de documento cualitativo que consideraremos es el manual de políticas.Aunque por lo general estos documentos abarcan amplias áreas de comportamiento de los empleados y laempresa, usted se debe enfocar principalmente en aquellos que traten sobre las políticas relacionadas con losservicios de cómputo, su uso, acceso, seguridad y cuotas. Al examinar las políticas, el analista de sistemas puedeobtener una buena idea de los valores, posturas y creencias que guían a la empresa.E X P E R I E N C I A D E H Y P E R C A S E ® 5 . 1“N os complace que usted considere a MRE un lugar intere-sante para trabajar como consultor. De acuerdo con ciertos rumo-res, usted ha estado ocupado explorando la oficina central. Sé quehay mucho qué ver. Es difícil para nosotros llevar cuentas de todo.Algo de lo que nos hemos asegurado a través de los años es tratarde usar los métodos en los que creemos. ¿Ha visto alguno denuestros informes? ¿Qué hay sobre los datos que se recolectaronen uno de los cuestionarios de Snowden? Él parece estar a favorde los cuestionarios por encima de cualquier otro método. Algu-nas personas le guardan rencor, pero creo que usted puede apren-der mucho de los resultados. Algunas personas han sido buenasa la hora de cooperar en estos proyectos. ¿Ya conoció a KathyBlandford?”Preguntas de HYPERCASE1. Utilice las pistas del caso para evaluar la experiencia decómputo de la Unidad de capacitación (Training Unit) ylos sentimientos de su personal en cuanto al PSRS. ¿Cuálcree usted que sea el consenso en la Unidad deCapacitación en cuanto al sistema de rastreo de proyectoscomputarizado?2. ¿Qué informes y declaraciones genera la Unidad decapacitación durante el desarrollo del proyecto? Haga unalista de cada una con una breve descripción.2. De acuerdo con los resultados de las entrevistas, ¿cuáles sonlos problemas con el sistema de rastreo de proyectos actualen la Unidad de capacitación?3. Describa el “conflicto de administración de proyectos” enMRE. ¿Quién está involucrado? ¿Por qué hay un conflicto?4. ¿Cómo lleva la Unidad de sistemas administrativos(Management Systems Unit) el registro del progreso delproyecto? Describa con brevedad el método o sistema.www.xlibros.com
142 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNOBSERVACIÓN DEL COMPORTAMIENTO DEL ENCARGADO DE TOMARDECISIONESObservar a los encargados de tomar decisiones, su entorno físico y su interacción con el entorno físico y ergonó-mico es un importante método discreto para el analista de sistemas. Mediante la observación de las actividadesde los encargados de tomar decisiones, el analista busca obtener una comprensión de lo que se lleva a cabo enrealidad, no sólo de lo que está documentado o explicado. Por medio de esta observación, el analista trata de verde primera mano las relaciones que existen entre los encargados de tomar decisiones y los demás miembros de laorganización, y al considerar además sus interacciones con las tecnologías también puede obtener pistas impor-tantes relacionadas con cuestiones de HCI, como qué tan bien se adapta el sistema al usuario.Observación de las actividades de toma de decisiones de un gerente comúnLa jornada de trabajo de un gerente se dice es una serie de interrupciones limitadas por breves ráfagas de trabajo.En otras palabras, determinar lo que un gerente “hace” es una proposición resbalosa, incluso bajo las mejorescircunstancias. Para que el analista de sistemas pueda comprender adecuadamente la manera en que los gerentescaracterizan su trabajo, se utilizan entrevistas interactivas y cuestionarios. Sin embargo, la observación permite alanalista ver de primera mano la forma en que los gerentes recopilan, procesan, comparten y utilizan la informa-ción y la tecnología para llevar a cabo su trabajo.Aunque es posible describir y documentar cómo toman decisiones los gerentes mediante el uso de cuadrosy flechas, lo que describiremos principalmente es a los humanos y sus actividades. Por lo tanto, sugerimos quelos analistas de sistemas utilicen una metodología más humanista para describir lo que hacen los gerentes.A este método se le conoce como guión (playscript) del analista. Con esta técnica, el “actor” es el encargadode tomar decisiones y a quien observamos cómo “actúa” o toma las decisiones. Al momento de establecer unguión, el actor aparece en una lista en la columna izquierda y todas sus acciones se listan en la columna dere-cha, como se muestra en la figura 5.7. Todas las actividades se registran con verbos; así, el encargado de lasdecisiones se podría describir siempre llevando a cabo una actividad: “habla”, “muestrea”, “corresponde” y“decide”.El guión es un método organizado y sistemático que exige al analista ser capaz de comprender y articular laacción que realiza cada uno de los encargados de tomar decisiones a los que se está observando. En un momentodado, este método ayuda al analista de sistemas a determinar qué información se requiere para las decisiones im-portantes o frecuentes que realizan las personas a las que observa. Así, del ejemplo del gerente de aseguramientode calidad en el guión, podemos ver con claridad que incluso cuando esta persona encargada de tomar decisionesse encuentra en el nivel gerencial medio, de todas formas requiere una buena cantidad de información externapara realizar las actividades requeridas de este trabajo específico.OBSERVACIÓN DEL ENTORNO FÍSICOObservar las actividades de los encargados de las decisiones es sólo una forma de evaluar sus requerimientosde información. Al observar el entorno físico donde trabajan estas personas también podemos obtener muchosdetalles sobre sus requerimientos humanos de información. La mayoría de las veces, este proceso de informa-ción implica examinar de manera sistemática sus oficinas y sus interacciones con la tecnología, ya que conambas suelen establecer una relación de influencia mutua. Muchas cuestiones de HCI se pueden identificarpor medio de la observación estructurada y se pueden conformar con otras técnicas, como las entrevistas ocuestionarios.Observación estructurada del entorno (STROBE)Algunas veces, los críticos de cine utilizan una forma estructurada de crítica, conocida como análisis de puestaen escena (mise-en-scène) para evaluar de manera sistemática lo que hay en una sola toma de la película. Anali-zan la edición, el ángulo de la cámara, la decoración del set, los actores y sus vestimentas para averiguar cómodan forma al significado de la película según las intenciones del director. Algunas veces la mise-en-scène de unapelícula contradice lo que se dice en el diálogo. Para el análisis de los requerimientos de información, el analistade sistemas suele proceder de manera análoga. A menudo es posible observar los detalles específicos de los alre-dedores que confirmarán o negarán la narrativa organizacional (también conocida como “historias” o “diálogo”)que se encuentra a través de las entrevistas o cuestionarios.Al método para la observación estructurada del entorno (STRuctured OBservation of the Environment) sele conoce como STROBE, por sus siglas en inglés. Para aplicar el método STROBE con éxito, el analista tienewww.xlibros.com
CAPÍTULO 5 • RECOPILACIÓN DE INFORMACIÓN: MÉTODOS DISCRETOS 143que observar de manera explícita siete elementos concretos que se encuentran comúnmente en las oficinas. En lafigura 5.8 se muestran los siete elementos observables y algunas de las preguntas clave que pueden surgir. Estoselementos pueden revelar mucho sobre la forma en que un encargado de tomar decisiones recopila, procesa, al-macena y comparte información, así como sobre su credibilidad en el lugar de trabajo.UBICACIÓN DE LA OFICINA Uno de los primeros elementos que debe observar un analista de sistemas es la ubica-ción de la oficina de un encargado de tomar decisiones con respecto a las demás oficinas. Las oficinas accesiblestienden a incrementar la frecuencia de interacción y los mensajes informales, mientras que las oficinasinaccesibles tienden a reducir la frecuencia de interacción y aumentan los mensajes orientados a tareas. Lasoficinas distribuidas a lo largo del perímetro del edificio por lo general ocasionan que se retenga un informe omemo en una de las oficinas, mientras que los conglomerados de oficinas fomentan la difusión de información.También es probable que las personas cuyas oficinas estén separadas de los demás tengan la tendencia de ver a laAnálisis deguiónEmpresa: Solid Steel ShelvingAnalista: L. BracketEscenario: Aseguramiento de calidadFecha: 1/3/2010Gerente de aseguramientode calidadPide al supervisor de piso de la tienda elinforme diario de producciónSupervisor de pisode la tiendaImprime el informe diario de produccióncomputarizadoHabla sobre los problemas recurrentes en lastiradas de producción con el gerente deaseguramiento de calidad (QA)Gerente de aseguramientode calidadLee el informe de producciónCompara el informe actual con los demásinformes de la misma semanaIntroduce los datos de la tirada de produccióndiaria en el modelo de QA en la computadoraObserva los resultados en pantalla del modelode QALlama a los proveedores de acero para hablarsobre las desviaciones de los estándares decalidadSupervisor de pisode la tiendaAsiste a la reunión sobre las nuevasespecificaciones de calidad con el gerente deaseguramiento de calidad y el vicepresidentede producciónGerente de aseguramientode calidadHace un borrador de la carta para informar alos proveedores sobre las nuevas especificacionesde calidad acordadas en la reuniónEnvía el borrador al vicepresidente vía correoelectrónicoVicepresidente deproducciónLee el borrador de la cartaDevuelve las correcciones y comentarios víacorreo electrónicoGerente de aseguramientode calidadLee la carta corregida en el correo electrónicoVuelve a escribir la carta para reflejar loscambiosEncargado de tomardecisiones (actor) Actividad relacionada con la información (guión)FIGURA 5.7Una página de muestra del guióndel analista, en la que se describeel proceso de toma de decisiones.www.xlibros.com
144 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNorganización de una manera distinta y, por ende, se aparten de los demás miembros de la organización en cuantoa sus objetivos.COLOCACIÓN DEL ESCRITORIO La colocación de un escritorio en la oficina puede ofrecer pistas en cuanto a laforma en que el encargado de tomar decisiones ejerce su poder. Los ejecutivos que encierran a un visitante enun espacio estrecho con la espalda del visitante dando a la pared mientras se permiten a sí mismos un amplioespacio, se colocan por sí solos en la más alta posición de poder posible. Es probable que un ejecutivo que colocasu escritorio de cara a la pared con una silla a un lado para el visitante fomente la participación e intercambiosequitativos de información. El analista de sistemas debe observar la disposición de los muebles de la oficina yen especial la colocación del escritorio. La figura 5.9 muestra un ejemplo de la colocación de un escritorio, asícomo muchos de los otros elementos de STROBE, como los accesorios, el equipo de oficina estacionario, lailuminación, el color y las fuentes externas de información.Ubicación de la oficina¿Quién tiene la oficina de la esquina? ¿Estándispersos en pisos separados los encargados detomar decisiones?Colocación del escritorio ¿Acaso la colocación del escritorio fomenta lacomunicación? ¿Demuestra poder?Equipo estacionario¿Prefiere el encargado de tomar decisiones recopilary almacenar la información en forma personal? ¿Esgrande o pequeña el área de almacenamiento?Accesorios¿Hay evidencia de que el encargado de tomardecisiones utiliza una PC, un teléfono inteligente ouna computadora tipo tableta en la oficina?Fuentes externas de informaciónIluminación y colores de la oficinaRopa que utilizan losencargados de tomar decisiones¿Obtiene el encargado de tomar decisiones muchainformación de las fuentes externas, como laspublicaciones especializadas o la Web?¿Está preparada la iluminación para realizar trabajodetallado o es más apropiada para una comunicacióncasual? ¿Son los colores cálidos y atractivos?¿Muestra autoridad el encargado de tomar decisionesal usar trajes conservadores? ¿Se requiere que losempleados usen uniformes?Preguntas que un analista podría investigarElemento observableFIGURA 5.8Siete elementos concretosobservables de STROBE yejemplos de preguntas que tal vezun analista quiera hacer.*SEKRDiscos CD-RW IluminaciónfluorescentePublicaciones especializadasen el libreroPC en elescritorioArchiveroFIGURA 5.9Observe la oficina del encargadode tomar decisiones para obtenerpistas concernientes a sualmacenamiento personal,procesamiento y difusión de lainformación.www.xlibros.com
CAPÍTULO 5 • RECOPILACIÓN DE INFORMACIÓN: MÉTODOS DISCRETOS 145EQUIPO DE OFICINA ESTACIONARIO Los archiveros, libreros y demás equipo grande paraalmacenar artículos se incluyen en la categoría de equipo de oficina estacionario. Si no hay talequipo, es probable que el encargado de tomar decisiones almacene muy pocos elementos deinformación personalmente. Si hay mucho equipo de este tipo, es posible que el encargadode tomar decisiones almacene y valore mucha información.ACCESORIOS El término accesorios (props en inglés, una abreviación del término propiedadesutilizado en el teatro/cine) se refiere a todo el equipo pequeño empleado para procesarO P O R T U N I D A D D E C O N S U L T O R Í A 5 . 3No confíes en su autoestimao no todo se refleja en un espejo“No quiero poder aquí”, objeta el Dr. Drew Charles, directormédico del banco de sangre regional, donde el grupo de sistemasque usted dirige acaba de empezar un proyecto. “Estoy hasta elcuello de trabajo tratando de mantener informados a los médicosregionales para que sigan las buenas prácticas de los bancos desangre”, dice, cerrando los ojos debido a la brillante luz solar queentra en su oficina. Apaga la pantalla conectada a su PC y pone suatención en usted y en la entrevista.El Dr. Charles está vestido en un conservador traje oscuro delana y utiliza una corbata de seda con rayas rojas. Continúa: “Dehecho, no tomo decisiones. Estoy aquí sólo en plan de apoyo posi-tivo”. Saca el cuadro de la organización que se muestra en la figura5.C1 para demostrar lo que dice. “Es tan claro como una fractura.El administrador en jefe es el experto en todas las cuestiones admi-nistrativas. Yo sólo soy el consultor médico”.La oficina del Dr. Charles está atestada no sólo de publicacio-nes médicas como Transfusion, sino también con copias amarillen-tas de viejas revistas BYTE y las ediciones más recientes de BusinessWeek. Cada revista de Business Week está abierta en una páginadistinta, como si el doctor estuviera en el proceso de devorar cadabocado de información. Sin embargo, las publicaciones médicasdesbordadas no están almacenadas meticulosamente en librerosmetálicos, como podría esperar. En crudo contraste con el relu-ciente equipo nuevo que vio en uso en las salas de donantes, laspublicaciones médicas están apiladas en enormes columnas en unavieja cama para donadores de sangre que se retiró desde hace mu-cho de su uso original.A continuación usted decide entrevistar al administrador enjefe, Craig Bunker, a quien el Dr. Charles aludió. Quince minutosdespués del inicio programado de su cita, la secretaria de Bunkers,Dawn Upshaw, finalmente le permite entrar a su oficina. Bunker,que acaba de terminar una conversación telefónica, está vestido enun saco sport color azul claro, pantalones de cuadros, camisa colorazul claro y una corbata. “¿Cómo está? He estado investigando paraver cómo anda todo”, dice Bunker a modo de presentación. Es so-ciable y muy amigable.Al observar el cuarto, usted detecta que no hay archiveros niuna PC como la que utiliza el Dr. Charles. Hay muchas fotografíasde la familia de Craig Bunker, pero el único artículo que se asemejaa un libro o revista es el boletín informativo del centro, Bloodline.Al empezar la entrevista formal, Bunker se enfrasca en historiassobre el Banco de sangre de Pennslvania, donde ocupó el puesto deasistente administrador hace seis años.Por último, usted baja por las escaleras al húmedo sótano de lamansión Heath Lambert. Las unidades móviles acaban de regresarde llevar la sangre procesada a los hospitales del área. Usted decidehablar con Sang Kim, el conductor de una de ellas; con JennyMcLaughlin, el gerente de distribución; y con Roberta Martin, unatécnica del laboratorio que trabaja en el turno nocturno.Roberta empieza: “No sé qué haríamos sin el doctor”. Sang con-tribuye a la conversación y agrega: “Es cierto, nos ayudó a idear unmejor itinerario de conducción el año pasado”.Jenny añade: “El Dr. Charles es imprescindible para establecer losniveles de inventario de cada hospital y, si no fuera por él, no tendría-mos nuestro nuevo software ni mucho menos nuestra nueva red”.Como uno de los miembros del equipo de análisis de sistemasasignado al proyecto del banco de sangre, desarrolle una lista deverificación de anécdotas mediante el uso del método STROBEpara interpretar de manera sistemática las observaciones que hizosobre las oficinas del Dr. Charles y de Craig Bunker. Considerecualquier discrepancia entre la vestimenta de un encargado de to-mar decisiones, sus declaraciones y lo que dicen los demás sobre él;entre la ubicación de su oficina y lo que se expone; y entre el equipode oficina las políticas establecidas. Además, sugiera en un párrafolas posibles entrevistas de seguimiento y las observaciones paraayudar a resolver cualquier pregunta sin contestar.Recolecciónde sangreDistribuciónde sangre Contabilidad Sistemascomputacionales Secretarial Laboratorio Enfermería InvestigaciónDirectormédicoDirectoradministrativoFIGURA 5.C1Cuadro organizacional del centro de sangre regional.www.xlibros.com
146 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNinformación, incluyendo teléfonos inteligentes, calculadoras, PC, plumas, lápices y reglas. La presencia deequipos de bolsillo, calculadoras y PC en la oficina del encargado de tomar decisiones sugiere que es másprobable que los utilice en forma personal que alguien que deba salir de la oficina para usarlos.FUENTES EXTERNAS DE INFORMACIÓN Un analista de sistemas necesita saber el tipo de información que utilizael encargado de tomar decisiones. Al observar el tipo de publicaciones almacenadas en su oficina es posibleaveriguar si el encargado de tomar decisiones busca información externa (la que encuentra en publicacionesespecializadas, artículos de noticias sobre otras empresas en la industria, etc.) o si confía más en la informacióninterna (informes de la empresa, correspondencia entre oficinas, manuales de políticas). El analista también debeobservar si el encargado de tomar decisiones prefiere obtener información externa a través de Web.ILUMINACIÓN Y COLORES DE LA OFICINA La iluminación y el color desempeñan un papel importante en laforma en que el encargado de tomar decisiones recopila información. Una oficina con iluminación cálida eincandescente indica la tendencia hacia una comunicación más personal. Un ejecutivo en una oficina coniluminación cálida recopilará más información de manera informal, mientras que algún otro miembro de laorganización que trabaje en una oficina con mucha iluminación y colores fuertes tal vez recopile información pormedios más formales, como memos e informes oficiales.VESTIMENTA DE LOS ENCARGADOS DE LAS DECISIONES Mucho se ha escrito sobre la vestimenta que utilizanlos ejecutivos y demás personas con autoridad. El analista de sistemas puede obtener un entendimiento de lacredibilidad que exhiben los gerentes en la organización al observar la ropa que utilizan en el trabajo. El traje dedos piezas para un hombre, o con falda para una mujer, representa la máxima autoridad, de acuerdo con algunosinvestigadores que han estudiado las percepciones de la apariencia de los ejecutivos. Cuando los líderes vistenropa casual pueden dar cabida a un proceso de toma de decisiones más participativo, pero dicha vestimenta amenudo provoca cierta pérdida de credibilidad en la organización, si la cultura predominante valora la vestimentatradicional y conservadora.Mediante el uso del método STROBE, el analista de sistemas puede obtener una mejor comprensión de laforma en que los gerentes recopilan, procesan, almacenan y utilizan la información. En la figura 5.10 se muestraun resumen de las características que exhiben los encargados de tomar decisiones y los correspondientes elemen-tos observables.Aplicación del método STROBEUna forma de implementar el método STROBE es mediante el uso de una lista de verificación de anécdotas consímbolos de taquigrafía representativos. Esta forma de aplicar el método STROBE fue útil para averiguar losrequerimientos de información para cuatro personas encargadas de tomar decisiones clave en una franquicia detiendas de ropa.Como se muestra en la figura 5.11, los analistas de sistemas utilizaron cinco símbolos de taquigrafía paraevaluar cómo se comparaba la observación de los elementos STROBE con la narrativa organizacional generadapor medio de las entrevistas. Los cinco símbolos son:1. Una marca de verificación indica que se confirmó la narrativa.2. Una “X” indica que se invierte la narrativa.Recopila información de manera informalBusca información fuera de la organizaciónProcesa los datos en forma personalAlmacena información en forma personalEjerce poder en la toma de decisionesExhibe credibilidad en la toma de decisionesComparte información con los demásIluminación incandescente y colores cálidosHabía publicaciones especializadas en la oficinaHabía PC o computadoras tipo tableta en la oficinaHabía equipo/archivos en la oficinaLa ubicación del escritorio denota poderUsa ropa que refleja autoridadOficina con fácil accesoElementos correspondientes enel entorno físicoCaracterísticas de los encargadosde tomar decisionesFIGURA 5.10Un resumen de las característicasde los encargados de tomardecisiones, las cualescorresponden a los elementosobservables en el entorno físico.www.xlibros.com
CAPÍTULO 5 • RECOPILACIÓN DE INFORMACIÓN: MÉTODOS DISCRETOS 1473. Un óvalo o símbolo en forma de ojo sirve como pista para que el analista de sistemas busque más detalles.4. Un cuadrado indica que la observación de los elementos STROBE modifica la narrativa.5. Un círculo indica que la narrativa se complementa con lo que se observó.Al implementar el método STROBE de esta forma, el primer paso es anotar los temas clave de la or-ganización que surjan de las entrevistas. Después se observan y registran los elementos de STROBE. Másadelante, al comparar la narrativa y las observaciones, se utiliza uno de los cinco símbolos apropiados paracaracterizar la relación. Así, el analista crea una tabla que primero documenta y después ayuda a analizar lasobservaciones.A T R A C T I V O D E L A M A CRecolectar datos en forma discreta parece algo sencillo, hasta que nos damos cuenta de que debemos organizar, alma-cenar y recuperar todos los datos recolectados para llevar a cabo el análisis. La solución más simple es un paquete desoftware llamado Yojimbo de la compañía Bare Bones. Es económico y fácil de usar. Sólo hay que arrastrar los elemen-tos que deseamos recolectar hacia Yojimbo y buscarlos después. Una metodología más estructurada sería usar unaaplicación como DEVONthink Professional Office. La metáfora de una oficina es un poco ambiciosa, ya que usar estaaplicación es como arrojar todo tipo de datos en el cajón de un escritorio y después averiguar cómo organizarlo. DE-VONthink acepta archivos de Microsoft Word, Excel y PowerPoint, así como cualquier objeto de iWork. Puede llevarel registro de sitios favoritos y páginas Web, imágenes y archivos PDF. Un lector OCR integrado ayuda a introducirpáginas en forma directa.Cuando llega el momento de acceder a la información, DEVONthink puede ayudar al analista de sistemas a reali-zar búsquedas, clasificar y mostrar relaciones entre los elementos gracias a la inteligencia artificial. DEVONthink noayuda a un analista a determinar el tamaño de las muestras o a llevar la cuenta de los errores, pero sí ayuda a recolectar,almacenar, recuperar, usar y compartir la información recopilada por el analista.FIGURA 5.MACDEVONthink Professional Office de DEVONtechnologies.www.xlibros.com
148 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNLista de anécdotas con símbolos para aplicar STROBENarrativa descrita por losmiembros de la organizaciónUbicación deoficina y equipoIluminación, color yelementos gráficosde la oficinaVestimenta delencargado de tomardecisionesClaveConfirma la narrativaNiega o invierte la narrativaPista para buscar más detallesModifica la narrativaComplementa la narrativaLa información fluye de maneraactiva en todos los niveles.Adams dice: “Yo calculo losporcentajes por mi cuenta”.Vinnie dice: “Me gusta estudiarsobre estas cosas”.Ed dice: “La mano derecha nosiempre sabe lo que está haciendola mano izquierda”.Adams dice: “Nuestra empresa nopasa por muchos cambios”.El personal de operaciones trabajatoda la noche algunas veces.Vinnie dice: “Hacemos las cosassegún lo que quiera el Sr. Adams”.Julie dice: “Algunas veces parececomo si a Stanley no le importara”.FIGURA 5.11Lista anecdótica con símbolos,para la implementación deSTROBE.En este capítulo conocimos los métodos discretos para recopi-lar información: el muestreo, la investigación de datos cualita-tivos y cuantitativos en formularios actuales y archivados, y laobservación de las actividades del encargado de las decisionespor medio del guión del analista, así como la observación delentorno físico del encargado de las decisiones mediante el usode STROBE.Al proceso de seleccionar en forma sistemática los ele-mentos representativos de una población se le conoce comomuestreo. El propósito del muestreo es seleccionar y estudiardocumentos como facturas, informes de ventas y memos, otal vez seleccionar y entrevistar, repartir encuestas u observarmiembros de la organización. El muestreo puede reducir loscostos, agilizar el proceso de recopilación de datos, mejorarla efectividad del estudio y reducir la predisposición en elmismo.Un analista de sistemas debe seguir cuatro pasos para dise-ñar una buena muestra: determinar la población, decidir sobreel tipo de muestra, calcular el tamaño de la misma y planear losdatos que es necesario recolectar o describir.RESUMENwww.xlibros.com
CAPÍTULO 5 • RECOPILACIÓN DE INFORMACIÓN: MÉTODOS DISCRETOS 149E X P E R I E N C I A D E H Y P E R C A S E ® 5 . 2“Estamos orgullosos de nuestro edificio aquí en Tennessee. Dehecho, pedimos a la firma arquitectónica I. M. Paid que usara elmismo tema para mezclarnos con el paisaje local y, al mismotiempo, identificarnos con nuestros clientes en todas las sucursales.Recibimos muchas personas que entran sólo para admirar el edifi-cio, una vez que se dan cuenta dónde se ubica exactamente. Dehecho, para los estándares de Tennessee, recibimos tantos visitan-tes, ¡que bien podríamos compararnos con las pirámides! Bueno,usted podrá averiguarlo por su cuenta a medida que lo recorra. ElAtrio este (East Atrium) es mi lugar favorito: entra mucha luz através del enorme tragaluz del techo. Además siempre me ha fasci-nado el hecho de que el edificio y su mobiliario podrían contar unahistoria muy distinta a la que cuentan sus ocupantes”.“Algunas veces los empleados se quejan de que todas las ofici-nas se ven iguales. Pero las salas públicas son espectaculares. Inclusoel comedor es atractivo. La mayoría de las personas no pueden decirlo mismo de las cafeterías de su lugar de trabajo. De todas formaspuede observar que todos personalizamos nuestras oficinas. Así que,aunque éstas fueran iguales, las personalidades de sus ocupantes seadueñan de ellas después de un tiempo de ocuparlas. ¿Qué ha vistousted? ¿Hubo algo que lo sorprendiera hasta ahora?”.Preguntas de HYPERCASE1. Use el método STROBE para comparar y contrastar lasoficinas de Evans y Ketcham. ¿A qué conclusión puede llegarcon sus observaciones de la manera en que cada personautiliza la tecnología de la información? ¿Qué tan compatiblesparecen ser Evans y Ketcham en términos de los sistemas queutilizan? ¿Qué otras pistas en cuanto al almacenamiento, aluso y a la difusión de la información puede descubrir despuésde haber observado sus oficinas?2. Examine con cuidado la oficina de Kathy Blandford. Use elmétodo STROBE para confirmar, invertir o negar lo que supodurante su entrevista con ella. Haga una lista de todo lo queencuentre sobre la Srita. Blandford después de observar suoficina, que no haya averiguado en la entrevista.3. Examine con cuidado el contenido del área de recepción deMRE mediante el método STROBE. ¿Qué cosas puedeinferir sobre la organización? Elabore una lista. ¿Quépreguntas le gustaría hacer en las entrevistas después dehaber observado el área de recepción? Haga una lista de laspersonas a las que le gustaría entrevistar y las preguntas queharía a cada una de ellas.FIGURA 5.HC1Hay pistas ocultas en HyperCase. Use el método STROBE para descubrirlas.Los tipos de muestras útiles para un analista de siste-mas son: de conveniencia, intencionadas, simples aleatorias ycomplejas aleatorias. El último tipo incluye las subcategoríasde muestreo sistemático y muestreo estratificado. Hay varioslineamientos a seguir para determinar el tamaño de las mues-tras.www.xlibros.com
150 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNPALABRAS CLAVE Y FRASESaccesorios (dispositivos de bolsillo y PC)colocación del escritoriocomercio de negocio a consumidor (B2C)comercio de negocio a negocio (B2B)equipo de oficina estacionariofuentes externas de informaciónguión del analistailuminación y colores de la oficinamuestra compleja aleatoriamuestra de convenienciamuestra intencionadamuestra simple aleatoriamuestreomuestreo de conglomeradomuestreo estratificadomuestreo sistemáticonivel de confianzaobservación sistemáticapoblación de muestrasitios Web corporativosSTROBEubicación de la oficinavestimenta utilizada por los encargados de tomar decisionesPREGUNTAS DE REPASO1. Defina lo que significa muestreo.2. Mencione cuatro razones por las que sería conveniente para el analista de sistemas muestrear datos o seleccionarpersonas representativas para las entrevistas.3. ¿Cuáles son los cuatro pasos a seguir para diseñar una buena muestra?4. Mencione las tres metodologías para el muestreo complejo aleatorio.5. Defina lo que significa estratificación de las muestras.6. ¿Qué efecto sobre el tamaño de la muestra se produce al usar un mayor nivel de confianza a la hora de muestrear losdatos de los atributos?7. ¿Cuál es la variable primordial que determina a cuántas personas debe el analista de sistemas entrevistar a profundidad?8. ¿Qué información sobre el encargado de tomar decisiones busca obtener el analista a partir de la observación?9. Mencione cinco pasos para ayudar al analista a observar las actividades comunes del encargado de tomar decisiones.10. En la técnica conocida como guión del analista, ¿quién es el actor?11. En el guión del analista, ¿qué información sobre los gerentes se registra en la columna de la derecha?12. Teniendo en cuenta que la idea de STROBE provino originalmente del mundo cinematográfico, ¿a qué se asemeja elpapel del analista de sistemas?13. Haga una lista de los siete elementos concretos del entorno físico del encargado de tomar decisiones que el analista desistemas puede observar mediante el uso de STROBE.PROBLEMAS1. A Cheryl Stake le preocupa que se estén llenando demasiados formularios de manera incorrecta. Ella cree queaproximadamente un 8 por ciento de los formularios tienen errores.a. ¿Qué tan grande debe ser el tamaño de muestra que utilice la Srita. Stake para estar un 99 por ciento segura de queestará dentro del 0.02?b. ¿Qué tan grande debe ser el tamaño de muestra que utilice la Srita. Stake para estar un 90 por ciento segura de queestará dentro del 0.02?c. Explique la diferencia entre las partes a y b.Los analistas de sistemas necesitan investigar los datos yformularios actuales y archivados, los cuales revelan dóndeha estado la organización y hacia dónde creen sus miembrosque se dirige. Hay que analizar tanto los documentos cuantita-tivos como los cualitativos. Debido a que los documentos sonmensajes persuasivos, debe tomar en cuenta que modificarlospuede también cambiar a la organización.Los analistas utilizan la observación como una técnica derecopilación de información; por medio de ella llegan a enten-der lo que en realidad ocurre cuando los usuarios interactúancon la tecnología de la información. Una manera de describir laforma en que se comportan los encargados de tomar decisioneses mediante el uso de un guión del analista, en el que se docu-menta cada una de las actividades de los principales actores.Además de observar el comportamiento del encargado delas decisiones, el analista de sistemas debe observar su entornoen busca de pistas importantes que le indiquen qué tan bien seadapta el sistema al usuario. Uno de los métodos para ello es laObservación estructurada del entorno (STROBE). Un analistade sistemas utiliza el método STROBE de la misma forma enque un crítico de cine utiliza un método conocido como análisisde puesta en escena (mise-en-scène) para analizar una toma enuna película.Es posible observar e interpretar varios elementos concre-tos en el entorno del encargado de tomar decisiones: 1) ubi-cación de la oficina, 2) colocación de su escritorio, 3) equipode oficina estacionario, 4) accesorios como dispositivos debolsillo y PC, 5) fuentes externas de información como pu-blicaciones especializadas y el uso de Web, 6) iluminación ycolores de la oficina y 7) vestimenta que utiliza el encargadode tomar decisiones. Se puede utilizar el método STROBE paracomprender mejor la verdadera forma en que los encargados detomar decisiones recopilan, procesan, almacenan y compartenla información para poder llevar a cabo su trabajo.www.xlibros.com
CAPÍTULO 5 • RECOPILACIÓN DE INFORMACIÓN: MÉTODOS DISCRETOS 151d. Suponga que la Srita. Stake aceptará un nivel de confianza del 95 por ciento de que estará dentro del 0.02. ¿Cuáldeberá ser ahora el tamaño de la muestra de los formularios?2. “Veo que tiene muchos papeles ahí. ¿Qué es todo eso?”, pregunta Betty Kant, jefa de la fuerza de trabajo de MIS queconstituye el grupo de enlace entre el grupo de sistemas que usted encabeza y la empresa Sawder’s Furniture Company.Usted se encuentra lidiando con un gran paquete de papeles en el momento en que se prepara para salir del edificio.“Bueno, tengo algunos estados de cuenta financieros, informes de producción de los últimos seis meses y algunosinformes de rendimiento que me dio Sharon sobre los objetivos y el rendimiento laboral durante los últimos seis meses”,le contesta usted al tiempo que algunos de los papeles caen al piso. “¿Por qué?”Betty toma los papeles que trae usted y los coloca en el escritorio más cercano. Después le responde: “Por que nonecesita toda esta basura. Está aquí para una cosa: hablar con nosotros, los usuarios. Apuesto a que nada de ese altero estrascendente”.a. La única forma de convencer a Betty de la importancia de cada documento es decirle lo que busca en cada uno.Explique en un párrafo qué tipo de documento contribuye para que el analista de sistemas pueda entender elfuncionamiento de la empresa.b. Mientras habla con Betty se da cuenta de que también necesita otros documentos cuantitativos. Haga una lista deellos.3. Recientemente, usted obtuvo muestras de los mensajes de correo electrónico que se han enviado a varios gerentes denivel medio de Sawder’s Furniture Company, que distribuye muebles de aglomerado del tipo “hágalo usted mismo” entodo el país. He aquí una que repite un mensaje que se encontró en varios memos más:Para: Sid, Ernie, CarlDe: ImogeneRe: Provisiones de computadora/impresoraFecha: Noviembre 10, 2009Me han hecho saber que estoy en una guerra contra las solicitudes de provisiones de computadora e impresora (CDgrabables, tóner, papel, etc.) que están fuera de proporción en cuanto a lo que se había negociado con base en elpresupuesto actual. Como todos aquí somos buenos soldados, espero que acepten lo que su sargento de provisiones lesindique que sea lo normal. Por favor, no más “requisiciones a medianoche” para compensar la escasez en existencia.Gracias por su lealtad, soldados; esto facilita la batalla para todos nosotros.a. ¿Qué metáfora(s) se está(n) usando? Haga una lista de la metáfora dominante y otras frases que se relacionen conese tema.b. Si encontró evidencia repetida de esta idea en otros mensajes de correo electrónico, ¿qué interpretación tendría? Useun párrafo para explicar.c. Describa en un párrafo la forma en que las personas en su grupo de análisis de sistemas pueden usar la informaciónde los mensajes de correo electrónico para dar forma a su proyecto de sistemas para Sawder’s.d. En entrevistas con Sid, Ernie y Carl, no ha habido mención de problemas para obtener suficientes provisiones decomputadora e impresora. Describa en un párrafo por qué dichos problemas tal vez no surjan en las entrevistas yhable sobre el valor de adicionalmente examinar los mensajes de correo electrónico y otros memos.4. “He aquí el manual principal de políticas en el que hemos trabajado durante todos estos años para los usuarios delsistema”, dice Al Bookbinder, al tiempo que sopla el polvo del manual y se lo entrega. Al se encarga de guardar losdocumentos para el departamento de sistemas de Prechter and Gumbel, un gran fabricante de productos para el cuidadode la salud y de belleza. “Todo lo que necesita saber cualquier usuario de cualquier parte del sistema está en lo que yollamo el Libro Azul. Es decir, está abarrotado de políticas. Es tan grande. Yo soy el único con un ejemplar completo.Cuesta demasiado reproducirlo”. Usted agradece a Al y se lleva el manual. Al leerlo se asombra de su contenido. Lamayoría de las páginas empiezan con un mensaje tal como: “Esta página sustituye a la página 23.1 en el Vol. II delmanual. Deseche los insertos anteriores; no usar”.a. Haga una lista de sus observaciones sobre la frecuencia de uso del Libro Azul.b. ¿Qué tan amigables para los usuarios son las actualizaciones en el manual? Escriba un enunciado en el que expliquesu respuesta.c. Escriba un párrafo en el que comente sobre la sabiduría de tener todas las políticas importantes para todos losusuarios del sistema en un solo libro.d. Sugiera una solución que incorpore el uso de manuales de políticas en línea para algunos usuarios.5. “Creo que podré recordar casi todo lo que él hace”, dice Ceci Awll. Ceci está a punto de entrevistar a Biff Welldon,vicepresidente de planeación estratégica de OK Corral, una cadena de restaurantes de bisteces con 130 sucursales. “Esdecir, tengo buena memoria. De todas formas, creo que es mucho más importante escuchar lo que dice que observar loque hace”. Como miembro del equipo de analistas de sistemas que usted dirige, Ceci ha estado hablando con ustedsobre la conveniencia de anotar sus observaciones de la oficina de Biff y sus actividades durante la entrevista.a. En un párrafo, persuada a Ceci de que no basta con escuchar en las entrevistas, sino que también es importanteobservar y registrar esas observaciones.b. Parece que Ceci ha aceptado su idea de que es importante la observación, pero aún no sabe cómo realizarla. Hagauna lista de elementos y comportamientos a observar, y en un enunciado junto a cada comportamiento indique eltipo de información que Ceci debe obtener.www.xlibros.com
152 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓN6. “Somos una empresa progresista, siempre buscando estar delante de la curva de energía. Probaremos cualquier cosa contal de que podamos adelantarnos a la competencia, y eso nos incluye a todos”, dice I. B. Daring, un ejecutivo de laempresa Michigan Manufacturing (2M). Usted lo está entrevistando como un paso preliminar en un proyecto desistemas en el que sus subordinados han expresado interés. A medida que escucha a I. B., echa una ojeada en su oficina ydescubre que la mayor parte de la información que tiene almacenada en las repisas se puede clasificar como manuales deprocedimientos internos. Además observa que hay una PC en una mesa en la parte posterior de la oficina de I. B. Lapantalla está cubierta de polvo y los manuales apilados a un lado de la PC aún tienen la envoltura original. Aunque ustedsabe que 2M utiliza una intranet, no puede ver cables que entren o salgan de la PC de I.B. En la pared detrás del enormeescritorio de caoba se aprecian cinco retratos al óleo, enmarcados, de los fundadores de 2M, todos agrupados alrededorde una placa dorada que porta el lema de la corporación: “Asegúrese de estar en lo correcto y después, siga adelante”.a. ¿Cuál es la narrativa organizacional o argumento según lo que describe I. B. Daring? Reformule con sus propiaspalabras.b. Haga una lista de los elementos de STROBE que haya observado durante su entrevista con I.B.c. Escriba, al lado de cada elemento de STROBE que haya observado, un enunciado sobre cómo lo interpretaría.d. Construya una tabla con el lema de la organización del lado inferior izquierdo de la página y los elementos deSTROBE en la parte superior. Use los símbolos de la aplicación de la “lista de anécdotas” de STROBE para indicarla relación entre el argumento de la organización según lo descrito por I.B. y cada elemento que usted hayaobservado (es decir, indique si cada elemento de STROBE confirma, invierte, lo obliga a buscar más detalles,modifica o complementa la narrativa).e. Con base en sus observaciones de STROBE y su entrevista, declare en un párrafo los problemas que puede anticiparen cuanto a obtener un nuevo sistema aprobado por I.B. y los demás. En una oración o dos describa cómo hubierapodido ser distinto su diagnóstico si sólo hubiera hablado con I.B. por teléfono, o si hubiera leído sus comentariosescritos en una propuesta de sistemas.PROYECTOS EN GRUPO1. Suponga que su grupo servirá como equipo de análisis y diseño de sistemas en un proyecto diseñado para computarizaro mejorar la computarización de todos los aspectos de negocios de una empresa de transportes estadounidense a nivelnacional con una trayectoria de 15 años, conocida como Maverick Transport. Esta empresa se especializa en embarquesmenores a un camión completo (LTL). Los empleados de la administración trabajan con base en la filosofía de justo atiempo (JIT), a partir de la cual han creado una sociedad en la que se incluye el emisor, el destinatario y el transportista(Maverick Transport) para el propósito de transportar y entregar los materiales que se requieren justo a tiempo parausarlos en la línea de producción. Maverick mantiene 626 camiones para transportar carga y cuenta con 45,000 piescuadrados de espacio de bodega, además de 21,000 pies cuadrados de espacio de oficina.a. Desarrolle junto a los miembros de su grupo una lista de recursos de datos de archivo que se deban verificar alanalizar los requerimientos de información de Maverick.b. Cuando la lista esté completa, idee un esquema de muestreo que permita a su grupo obtener una imagen clara de laempresa sin tener que leer todos los documentos generados en su historial de 15 años.2. Haga los arreglos para visitar una organización local que esté en expansión o que esté mejorando de alguna forma sussistemas de información. Para que su grupo pueda practicar los diversos métodos de observación descritos en estecapítulo, asigne uno de estos dos métodos a cada miembro del equipo: 1) desarrollar el guión del analista o 2) usarSTROBE. Es posible emplear muchas de estas estrategias durante las entrevistas de uno a uno, mientras que otrasrequieren reuniones formales en la organización. Trate de cumplir con varios objetivos durante su visita a laorganización; prográmela a una hora apropiada que permita a todos los miembros del equipo probar su método deobservación asignado. Usar varios métodos como las entrevistas y la observación (la mayor parte de las veces al mismotiempo) es la única forma efectiva en costo de obtener una imagen verdadera y oportuna de los requerimientos deinformación de la organización.3. Los miembros de su grupo se deben reunir y discutir sobre sus hallazgos después de completar el proyecto 2. ¿Hubosorpresas? ¿La información recopilada por medio de la observación confirmó, invirtió o negó lo que se aprendió en lasentrevistas? ¿Hubo conflictos directos entre algunos de los hallazgos de los métodos de observación? Trabaje con sugrupo para desarrollar una lista de formas de lidiar con cualquier tipo de información desconcertante (por ejemplo,mediante la realización de entrevistas de seguimiento).www.xlibros.com
CAPÍTULO 5 • RECOPILACIÓN DE INFORMACIÓN: MÉTODOS DISCRETOS 153BIBLIOGRAFÍA SELECCIONADACooper, D. R. y P. S. Schindler. Business Research Methods. Nueva York: McGraw-Hill/Irwin, 2007.Edwards, A. y R. Talbot. The Hard-Pressed Researcher. Nueva York: Longman, 1994.Kendall, J. E. “Examining the Relationship Between Computer Cartoons and Factors in Information Systems Use, Success andFailure; Visual Evidence of Met and Unmet Expectations”. The DATA BASE for Advances in Information Systems, Vol. 28,Núm. 2, primavera de 1997, pp. 113-126.Kendall, J. E. y K. E. Kendall. “Metaphors and Methodologies: Living Beyond the Systems Machine”. MIS Quarterly, Vol. 17,Núm. 2, junio 1993, pp. 149-171.Kendall, J. E. y K. E. Kendall. “Metaphors and Their Meaning for Information Systems Development”. European Journal ofInformation Systems, 1994, pp. 37-47.Kendall K. E. y J. E. Kendall. “Observing Organizational Environments: A Systematic Approach for Information Analysts”.MIS Quarterly, Vol. 5, Núm. 1, 1981, pp. 43-55.Kendall K. E. y J. E. Kendall. “STROBE: A Structured Approach to the Observation of the Decision-Making Environment”.Information and Management, Vol. 7, Núm. 1, 1984, pp. 1-11.Kendall, K. E. y J. E. Kendall. “Structured Observation of the Decision-Making Environment: A Validity and ReliabilityAssessment”. Decision Sciences, Vol. 15, Núm. 1, 1984, pp. 107-118.Markus, M. L. y A. S. Lee. “Special Issue on Intensive Research in Information Systems: Using Qualitative, Interpretive and CaseMethods to Study Information Technology—Second Installment”. MIS Quarterly, Vol. 24, Núm. 1, marzo de 2000, p.1.Schultze, U. “A Confessional Account of an Ethnography About Knowledge Work”. MIS Quarterly, Vol. 24, Núm. 1, marzo de2000, pp. 3-41.Shultis, R. L. “‘Playscript’—A New Tool Accountants Need”. NAA Bulletin, Vol. 45, Núm. 12, agosto de 1964, pp- 3-10.Webb, E. J., D. T. Campbell, R. D. Schwartz y L. Sechrest. Nonreactive Measures in the Social Sciences, 2da. edición. Stanford,CT: CENGAGE Learning, 1981.www.xlibros.com
154 PARTE II ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNE P I S O D I O 5CASO DE LA CPUALLEN SCHMIDT, JULIE E. KENDALL Y KENNETH E. KENDALLVer es creer“Chip, sé que las entrevistas tardaron mucho tiempo, pero valieron la pena”, dice Anna en tono defensivo mientras Chip entraa su oficina con una mirada de preocupación en su rostro.“Estoy seguro de ello”, dice Chip. “En realidad les dejaste una buena impresión. Las personas me han detenido en el pa-sillo para decirme que están felices de que estemos trabajando en el nuevo sistema. No me preocupan las entrevistas en sí. Loque me preocupa es que no tuvimos tiempo para hablar sobre las observaciones antes de que hicieras las entrevistas”.“Pierde cuidado, fui toda ojos”, se ríe Anna. “Utilicé una técnica llamada STROBE, Observación estructurada del entorno,para ver de una manera sistemática los hábitats de nuestra persona encargada de tomar las decisiones. De seguro le interesaránlas notas que escribí para cada persona que entrevisté”, dice Anna, mientras entrega a Chip por escrito sus observaciones orga-nizadas de cada una de las entrevistas.EJERCICIOSPara hacer estos ejercicios tiene que visitar el sitio Web para obtener las observaciones de las oficinas de los encargados de tomardecisiones. Visite el sitio Web en www.pearsonhighered.com/kendall y busque la sección “CPU Observations of Decision Mak-ers’ Offices” (Observaciones de la CPU sobre las oficinas de los encargados de tomar decisiones).E-1. Con base en la observación que hizo Anna sobre la oficina y las vestimentas de Dot, use el método STROBE para anali-zar a Dot como encargado de tomar decisiones. En dos párrafos, compare y contraste lo que aprendió en la entrevista deDot con lo que aprendió por medio del método STROBE.E-2. Después de examinar las observaciones por escrito de Anna sobre la oficina de Mike Crowe, use el método STROBEpara analizar a Mike como encargado de tomar decisiones. ¿Qué diferencias (si las hay) puede ver entre la entrevista deMike y las observaciones de Anna sobre Mike? Responda en dos párrafos.E-3. Use el método STROBE para analizar las observaciones por escrito de Anna sobre Cher Ware y Paige Prynter. Use dospárrafos para comparar y contrastar el estilo de toma de decisiones de cada persona, según lo que revelen sus oficinas ysu vestimenta.E-4. Use el método STROBE para analizar las observaciones por escrito de Anna sobre Hy Perteks. Ahora compare su análisiscon la entrevista de Hy. Use dos párrafos para discutir si STROBE confirma, niega, invierte o sirve como pista para buscarmás detalles en la narrativa de Hy (incluya preguntas adicionales que desee hacer a Hy para aclarar su interpretación).www.xlibros.com
155C A P Í T U L O 6Modelado ágily prototiposOBJETIVOS DE APRENDIZAJEAl completar este capítulo usted podrá:1. Comprender las raíces del modelado ágil en prototipos y los cuatro tipos principalesde éstos.2. Usar prototipos para recopilar requerimientos humanos de información.3. Comprender el concepto de RAD para usarlo en la recopilación de los requerimientoshumanos de información y el diseño de interfaces.4. Comprender el modelado ágil y las prácticas básicas que lo diferencian de otrasmetodologías de desarrollo.5. Conocer la importancia de los valores fundamentales para el modelado ágil.6. Comprender cómo mejorar la eficiencia, para trabajadores expertos, mediante el usode métodos estructurados o modelado ágil.En este capítulo exploraremos el modelado ágil: una colección de innovadorasmetodologías para el desarrollo de sistemas centradas en el usuario. Aprenderásobre valores y principios, actividades, recursos, prácticas, procesos y herra-mientas asociadas con las metodologías ágiles. Estas metodologías tienen susraíces en los prototipos, por lo que este capítulo se inicia con ellos para proveerun mejor contexto de entendimiento; hacia la segunda mitad del capítuloabordaremos la metodología ágil.La creación de prototipos de sistemas de información es una técnica valiosa para recopilarrápidamente información específica sobre los requerimientos de información de los usuarios.En general, la creación de prototipos efectivos se debe llevar a cabo en las primeras etapas delSDLC, durante la fase de determinación de requerimientos.Incluimos los prototipos en este punto para recalcar su importancia como técnica de reco-pilación de información. Al usar los prototipos de esta forma, el analista de sistemas busca lasreacciones iniciales de los usuarios y la gerencia con respecto al prototipo, las sugerencias delos usuarios sobre cambiar o limpiar el sistema propuesto, las posibles innovaciones para éstey los planes de revisión que definen las partes del sistema a implementar primero o las sucur-sales de la empresa que seguirán.Hay una variedad especial de prototipo en la que se utiliza una metodología orientada aobjetos, conocida como desarrollo rápido de aplicaciones (RAD). Los prototipos y RAD tambiénse pueden utilizar como método alternativo al SDLC.www.xlibros.com
156 PARTE II • ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNPROTOTIPOSComo analista de sistemas que va a presentar un prototipo del sistema de información, a usted le interesanmucho las reacciones que tendrán los usuarios y la administración con respecto al prototipo. Debe anticiparcon precisión cómo reaccionarán al trabajar con el prototipo y qué tan bien se adaptarán a sus necesidades lascaracterísticas del sistema previstas. Las reacciones se recopilan a través de la observación, entrevistas y hojasde retroalimentación (posiblemente cuestionarios) diseñadas para obtener la opinión de cada persona sobre elprototipo a medida que interactúa con él.La información que se recopila en la fase de prototipos permite al analista establecer prioridades y redirigirlos planes sin sufrir repercusiones graves, con un mínimo de interrupción. Debido a esta característica, la crea-ción de prototipos y la planeación van de la mano.Tipos de prototiposLa palabra prototipo se utiliza en muchas formas; en vez de intentar una definición sintetizada de ellos, o de tra-tar de forzar una metodología correcta para este tema controversial, vamos a ilustrar cómo se puede aplicar conéxito cada una de las diversas concepciones de los prototipos en una situación específica, como se muestra en lafigura 6.1.PROTOTIPO DE PARCHES El primer tipo alude a la construcción de un sistema funcional, parchado o construidototalmente con parches. En ingeniería, a esta metodología se le conoce como “breadboarding”: crear un modelofuncional de un circuito integrado (cuya forma final será microscópica) uniendo partes.En términos de sistemas de información, se trata de un modelo funcional, con todas las características ne-cesarias, pero que es ineficiente. En esta instancia del prototipo, los usuarios pueden interactuar con el sistemay acostumbrarse a la interfaz y a los tipos de salidas disponibles. Sin embargo, los procesos de recuperación yalmacenamiento de información pueden ser ineficientes debido a que los programas se escribieron con rapidez,con el objetivo de que fuera funcional en vez de eficiente.Característica 3Característica 1Característica 5Prototipo de características selectasPrototipo no operacionalPrototipo de parchesPrototipo primero de una serieInstalación 3Instalación 2Instalación 1Entrada Proceso SalidaFIGURA 6.1Cuatro tipos de prototipos (en elsentido de las manecillas delreloj, empezando en la esquinasuperior izquierda).www.xlibros.com
CAPÍTULO 6 • MODELADO ÁGIL Y PROTOTIPOS 157PROTOTIPO NO OPERACIONAL La segunda concepción de prototipo es la del modelo a escala no funcional,empleado para probar ciertos aspectos del diseño. Un ejemplo es el modelo a escala completa de un automóvil quese utiliza en pruebas de túnel de viento. El tamaño y la forma del automóvil son precisos, pero el automóvil no esfuncional; se incluyen sólo las características esenciales para una prueba específica.Sería pertinente un modelo de escala no funcional para un sistema de información cuyas aplicaciones requi-rieran una codificación demasiado extensa como para incluirla en el prototipo, pero fuera útil hacerse una idea dela entrada y la salida necesarias solamente. En este caso, no se crearía un prototipo del procesamiento, debido alexcesivo costo y tiempo requeridos. Los usuarios de todas formas podrían tomar decisiones en cuanto a la utili-dad del sistema con base en el prototipo de la entrada y la salida.PROTOTIPO PRIMERO DE UNA SERIE La tercera concepción de los prototipos es la creación de un modelo a escalacompleta de un sistema, a lo que comúnmente se le conoce como piloto. Un ejemplo sería crear el prototipo delprimer aeroplano de una serie y después ver si puede volar antes de construir un segundo aeroplano. El prototipoes completamente funcional; es una realización de lo que el diseñador espera sea una serie de aeroplanos concaracterísticas idénticas.Este tipo de prototipo es útil cuando se planean muchas instalaciones del mismo sistema de información.El modelo funcional a escala completa permite a los usuarios experimentar una interacción realista con el nuevosistema, al tiempo que minimiza el costo de solucionar los problemas que presenta. Por ejemplo, cuando unacadena de tiendas de abarrotes al menudeo intenta usar el intercambio electrónico de datos (EDI) para verificarlos envíos de los proveedores en varios puntos de venta, se podría instalar un modelo a escala completa en unatienda, antes de implementar el sistema en las demás, con el fin de que surjan los potenciales problemas de EDIsólo ahí para resolverlos antes de que se extiendan en todos puntos de venta.PROTOTIPO DE CARACTERÍSTICAS SELECTAS La cuarta concepción de los prototipos es la creación de un modelooperacional que incluya sólo algunas características del sistema final. Una analogía sería un nuevo centrocomercial que abra antes de terminar de construir todas las tiendas.Al crear prototipos de sistemas de información de esta forma, es posible incluir sólo algunas característi-cas esenciales. Por ejemplo, el prototipo de un sistema mostraría a los usuarios un menú de pantalla con seiscaracterísticas, agregar un registro, actualizar un registro, eliminar un registro, buscar una palabra clave en unregistro, listar un registro o escanear un registro, aunque sólo tres de las seis características estarían habilitadaspara usarse, de manera que el usuario pueda agregar un registro (característica 1), eliminar un registro (caracte-rística 3) y listar un registro (característica 5). La retroalimentación de los usuarios puede ayudar a los analistas acomprender lo que funciona y lo que no. También puede ayudar con las sugerencias sobre cuáles pueden ser lassiguientes características a agregar.Mediante este tipo de creación de prototipos, el sistema se desarrolla en módulos, de manera que si los usua-rios evaluaron positivamente las características presentadas, se pueden incorporar al sistema final sin tener quetrabajar mucho para interconectar los módulos. Los prototipos que se realizan de esta manera forman parte delsistema actual. No son sólo un modelo, como en la creación de prototipos no operacionales que vimos antes.A menos que se mencione lo contrario, todas las referencias que hagamos en este capítulo a los prototipos se re-ferirán al prototipo de características selectas.Uso de prototipos como alternativa para el SDLCAlgunos analistas argumentan que es necesario considerar a los prototipos como una alternativa al SDLC. En elcapítulo 1 vimos que el SDLC es una metodología lógica y sistemática para desarrollar sistemas de información.Las quejas sobre tener que pasar por el proceso del SDLC se concentran en dos aspectos interrelacionados.El primero es el largo tiempo requerido para pasar por el ciclo de vida de desarrollo. A medida que aumenta lainversión de tiempo del analista, el costo del sistema entregado se eleva en forma proporcional.La segunda es que los requerimientos del usuario cambian con el tiempo. Durante el extenso intervalo entreel momento en que se analizan los requerimientos de los usuarios y el momento en el que se entrega el sistematerminado, los requerimientos de los usuarios evolucionan. Así, debido al ciclo de desarrollo extendido, puedesuceder que el sistema resultante reciba críticas por abordar en forma inadecuada los requerimientos de informa-ción actuales de los usuarios.Además del problema de no estar al corriente con los requerimientos de información de los usuarios, se su-giere que éstos no son conscientes de lo que desean o detestan sino hasta que conocen una propuesta concreta.En el SDLC tradicional, a menudo es demasiado tarde para cambiar un sistema no deseado una vez que se en-tregó al cliente.Para lidiar con estos problemas, algunos analistas proponen utilizar los prototipos como alternativa alSDLC, pues el analista recorta efectivamente el tiempo entre el proceso de averiguar los requerimientos huma-nos de información y la entrega de un sistema funcional. Además, al usar prototipos en vez del SDLC tradicionalwww.xlibros.com
158 PARTE II • ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNse podrían solucionar algunos de los problemas implicados con la identificación precisa de los requerimientos deinformación de los usuarios.Una desventaja de sustituir el SDLC con la creación de prototipos deriva de dar forma al sistema antes decomprender perfectamente el problema o la oportunidad pertinente. Además, al usar los prototipos como alter-nativa se podría producir un sistema que sea aceptado por ciertos grupos específicos de usuarios, pero que seainadecuado para las necesidades del sistema en general.El método por el que abogamos en este libro es usar prototipos como parte del SDLC tradicional. Así po-demos considerar a los prototipos como un método adicional especializado para averiguar los requerimientos deinformación de los usuarios a medida que interactúan con los prototipos y proveen retroalimentación para elanalista.DESARROLLO DE UN PROTOTIPOLos prototipos son un medio excelente para obtener retroalimentación sobre el sistema propuesto y el grado enque cumple con las necesidades de información de sus usuarios, como se muestra en la figura 6.2. El primer pasode la creación de un prototipo es estimar los costos involucrados en la construcción de un módulo del sistema.Si los costos del tiempo de los programadores y del analista, así como los costos del equipo están dentro delpresupuesto, se puede continuar con la construcción del prototipo. Ésta es una excelente manera de facilitar laintegración del sistema de información en la cultura y sistema, más extensos, de la organización.Modifique su diseñocon base en lasreacciones a suprototipoFIGURA 6.2Los analistas deben modificar losdiseños de sus pantallas originalescon base en las reacciones de losusuarios al prototipo.www.xlibros.com
CAPÍTULO 6 • MODELADO ÁGIL Y PROTOTIPOS 159Lineamientos para desarrollar un prototipoUna vez tomada la decisión de crear un prototipo, hay que cumplir con cuatro lineamientos para integrar el pro-totipo en la fase de determinación de requerimientos del SDLC:1. Trabajar en módulos administrables.2. Crear el prototipo con rapidez.3. Modificar el prototipo.4. Hacer énfasis en la interfaz de usuario.Como puede ver, los lineamientos sugieren formas de proceder necesariamente interrelacionadas. En las siguien-tes subsecciones explicaremos cada uno de ellos.TRABAJAR EN MÓDULOS ADMINISTRABLES Al crear prototipos de algunas de las características de un sistema yconvertirlos en un modelo funcional, es imperativo que el analista trabaje en módulos administrables. Una de lasventajas únicas de los prototipos es que no es necesario ni conveniente construir todo un sistema funcional parausarlos.Un módulo administrable permite a los usuarios interactuar con sus características clave y se puede construirpor separado. Las características del módulo que se consideran menos importantes se dejan intencionalmentefuera del prototipo inicial. Como veremos más adelante en este capítulo, esto es muy similar a la metodologíaágil que hace énfasis en liberar pequeñas versiones.CREAR EL PROTOTIPO CON RAPIDEZ La velocidad es esencial para la creación de un prototipo exitoso de unsistema de información. Recuerde que una de las quejas sobre el SDLC tradicional es que el intervalo entre ladeterminación de los requerimientos y la entrega de un sistema completo es demasiado largo como para poderlidiar en forma efectiva con las necesidades en evolución de los usuarios.Los analistas pueden usar prototipos para acortar este hueco mediante el uso de técnicas tradicionales de re-copilación de información para señalar los requerimientos salientes de información, y después tomar decisionesrápidas que produzcan un modelo funcional. En efecto, el usuario ve y utiliza el sistema desde las primeras eta-pas del SDLC, en vez de tener que esperar un sistema terminado para obtener experiencia práctica.Al ensamblar un prototipo operacional con la mayor rapidez y anticipación en el SDLC, el analista puedeobtener una valiosa comprensión acerca de cómo proceder con el resto del proyecto. Al mostrar a los usuarios enlas primeras etapas del proceso el desempeño real de las partes del sistema, la creación rápida de prototipos evitacomprometer recursos excesivos en un proyecto que tal vez llegue a fracasar. Más adelante, cuando examinemosO P O R T U N I D A D D E C O N S U L T O R Í A 6 . 1Los prototipos, ¿son los reyes?“Como sabe, somos un grupo entusiasta. Todavía no nos con-vertimos en dinastía, pero estamos trabajando en ello”, le dice PaulLeGon. A sus 24 años, Paul (al que presentamos en la Oportunidadde consultoría 2.3) es el “niño rey” de Pyramid, Inc., una pequeñapero exitosa empresa editorial independiente especializada en li-bros en rústica que están fuera de la corriente dominante en la in-dustria editorial. Como analista de sistemas, usted ha sido contratadopor Pyramid, Inc. para desarrollar un sistema de información distri-buida y un inventario de almacén computarizado.“Estamos contratando muchos trabajadores”, continúa Paul,como si quisiera convencerlo de la inmensidad de la empresa de Pyra-mid. “Y creemos que Pyramid cuenta con un posicionamiento perfectoen lo que respecta a nuestros mercados en el norte, sur, este y oeste”.“Mi asistente Cecil Toom y yo hemos estado trabajando muyduro, pensando en el nuevo sistema. Y hemos concluido que lo querealmente necesitamos es un prototipo. De hecho, hemos descar-tado mucho material. Nuestra fascinación con la idea en generalrealmente ha tomado forma de pirámide”.Mientras usted se prepara a formular una respuesta para Paul,piensa en las semanas anteriores que trabajó con Pyramid, Inc.Usted cree que los problemas de negocios que debe resolver susistema de información son bastante simples. También sabe que laempresa tienen un presupuesto muy limitado y no puede darse ellujo de gastar como reina. De hecho, el proyecto es bastante pe-queño.Ceil, basándose en los anteriores comentarios de Paul, le dicea usted: “No es que estemos muy involucrados con los prototipos,pero sentimos que representan el nuevo mundo. Y ahí es dondequeremos estar todos. Sabemos que necesitamos un prototipo. ¿Estáusted convencido?”.Con base en el entusiasmo de Paul y Ceil por los prototipos ylo que usted sabe sobre las necesidades de Pyramid, ¿apoyaría laconstrucción de un prototipo? ¿Por qué sí o por qué no? Formulesu decisión y respuesta en una carta para Paul LeGon y Ceil Toom.Presente una justificación para su decisión con base en los criteriosgenerales para justificar el uso de prototipos.www.xlibros.com
160 PARTE II • ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNO P O R T U N I D A D D E C O N S U L T O R Í A 6 . 2Despejando el camino para los vínculos con los clientesla empresa World’s Trend (en el capítulo 7 encontrará una des-cripción detallada de la corporación) está construyendo un sitio Webpara vender mercancía de liquidación (que por lo general se vende através de Web y por medio de su operación de ventas por catálogo).Lincoln Cerf, el consultor Web recién contratado, llega a una ciudadmuy fría e invernal, luchando por avanzar a través de varias pulgadasde nieve para reunirse con uno de los miembros del equipo de siste-mas, Mary Mae, en las oficinas generales de World’s Trend.Mary da la bienvenida a Lincoln y le dice: “¡Por lo menos elclima no parece afectar nuestras ventas Web! No importa lo quepase, siguen a un ritmo dinámico”. Lincoln emite un sonido paraaprobar el triste intento de chiste de Mary, sonríe y dice: “Descubríde tu lista de correo electrónico de la semana pasada que estás tra-tando de determinar el tipo de información que hay que mostrar ennuestro sitio Web de liquidación”.Mary le responde: “Sí, estoy tratando de organizar todo de lamejor manera posible. Nuestros clientes están muy ocupados. Séque las fotografías de toda nuestra mercancía pueden tardar muchotiempo en aparecer en la página si un cliente accede al sitio Webmediante un módem lento desde su casa”. Mary continúa: “Linc, nisiquiera me preocupa cómo diseñar nuestro sitio de liquidación eneste momento, sino cuánta información necesitamos incluir en unapágina. Por ejemplo, cuando los artículos están en liquidación notodos los colores y tamaños están disponibles. ¿Qué crees que esmejor, incluir cierta información básica y dejar que el cliente hagaclic en un botón para solicitar más información, o mostrar la mayorcantidad posible de detalles en una sola página? Si uso el métodode los vínculos, entonces puedo ajustar más artículos en la panta-lla... pero podría ser demasiado ordenado. A los clientes les gustala apariencia y la sensación de una venta de mercancía agrupada enmontones”.Para extender la idea de Mary, Linc dice: “Sí. Me preguntocómo quieren los clientes que se organice la información. ¿Los hasvisto usar la Web? Es decir, ¿buscan zapatos cuando compran untraje? Si es así, ¿deberían aparecer zapatos en la página de trajes oestar vinculados de alguna forma?”.Mary comenta: “Eso es lo que yo me pregunto también. Des-pués me pregunto si deberíamos probar este método sólo en la ropade caballero primero, antes de implementarla en la ropa de damas.¿Qué tal si la forma de comprar de los hombres y las mujeres en laWeb es distinta?”.Como tercer miembro del grupo de desarrollo del sitio Web deWorld’s Trend, responda con un breve informe por escrito para Lin-coln y Mary acerca de si deben usar o no un prototipo para obtenerrecomendaciones de clientes potenciales sobre el sitio Web propuesto.¿Qué tipo de prototipo sería apropiado? Considere cada uno de lostipos disponibles y explique por qué se podría aplicar (o no) cada unoa este problema. Dedique un párrafo para cada explicación.el concepto de RAD, podrá ver de nuevo la importancia de la creación rápida de sistemas. Además, el modeladoágil también se basa en la práctica de tiempos de entrega cortos.MODIFICAR EL PROTOTIPO Un tercer lineamiento para desarrollar el prototipo es que su construcción debe admitirmodificaciones. Para lograr esto hay que crearlo en módulos que no tengan un alto grado de interdependencia. Sicumplimos con este lineamiento encontraremos menos resistencia cuando haya que modificar el prototipo.Por lo general el prototipo se modifica varias veces, para lo cual pasa a través de varias iteraciones. Loscambios en el prototipo deben acercar más el sistema a lo que los usuarios dicen que es importante. Cada modi-ficación requiere de otra evaluación por parte de los usuarios.El prototipo no es un sistema terminado. Entrar a la fase de creación del prototipo con la idea de que reque-rirá modificaciones es una postura útil que demuestra a los usuarios qué tan necesaria es su retroalimentaciónpara mejorar el sistema.HACER ÉNFASIS EN LA INTERFAZ DE USUARIO La interfaz del usuario con el prototipo (y con el sistema, enúltima instancia) es muy importante. Como lo que realmente tratamos de lograr con el prototipo es hacer quelos usuarios articulen con más detalle sus requerimientos de información, deben ser capaces de interactuar confacilidad con el prototipo del sistema. También deben ser capaces de ver cómo el prototipo les permitirá realizarsus tareas. Para muchos usuarios, la interfaz es el sistema. No debe ser un obstáculo.Aunque muchos aspectos del sistema quedarán sin desarrollarse en el prototipo, la interfaz de usuario debeestar lo suficientemente desarrollada como para que los usuarios puedan acoplarse al sistema con rapidez y nodesanimarse. Los sistemas interactivos en línea que utilizan interfaces de GUI se adaptan de manera ideal a losprototipos. En el capítulo 14 describiremos con detalle las consideraciones importantes en el diseño de HCI.Desventajas de los prototiposAl igual que sucede con cualquier otra técnica de recopilación de información, el uso de prototipos presentavarias desventajas. La primera es que puede ser bastante difícil administrar la creación de un prototipo como unproyecto dentro del esfuerzo más grande de sistemas. La segunda es que los usuarios y analistas pueden adoptarwww.xlibros.com
CAPÍTULO 6 • MODELADO ÁGIL Y PROTOTIPOS 161un prototipo como sistema completo cuando todavía es inadecuado y aunque nunca haya tenido la intención deservir como sistema terminado. Los analistas necesitan trabajar para asegurarse de que la comunicación con losusuarios sea clara en cuanto a la agenda para interactuar con el prototipo y mejorarlo.El analista debe comparar estas desventajas contra las ventajas conocidas al decidir si va a crear un proto-tipo, cuándo se va a crear y qué tanto del sistema se va a incluir en el prototipo.Ventajas de los prototiposLa utilización de prototipos no es necesaria o apropiada en todos los proyectos de sistemas, como hemos visto.Sin embargo, las ventajas también se deben tener en consideración al decidir si debemos o no crearlos. Las tresprincipales ventajas de los prototipos son el potencial de cambiar el sistema durante las primeras etapas de sudesarrollo, la oportunidad de detener el desarrollo en un sistema que no está funcionando y la posibilidad de de-sarrollar un sistema que cumpla mejor con las necesidades y expectativas de los usuarios.La creación de prototipos exitosos depende de la retroalimentación oportuna y frecuente de los usuarios, quelos analistas pueden usar para modificar el sistema y hacerlo más sensible a las necesidades actuales. Al igualque con cualquier otro esfuerzo de sistemas, los cambios en las primeras etapas son menos costosos que los cam-bios tardíos. En la última parte del capítulo verá cómo la metodología ágil para el desarrollo utiliza una formaextrema de prototipos, en la que se requiere un cliente en el sitio de trabajo para que provea retroalimentacióndurante todas las iteraciones.Creación de prototipos mediante software COTSAlgunas veces, la forma más rápida de crear un prototipo es por medio de la instalación modular de softwareCOTS. Aunque podemos explicar con facilidad el concepto de COTS a través de los populares paquetes de unO P O R T U N I D A D D E C O N S U L T O R Í A 6 . 3Incubar un pez“Sólo le pido un poco de paciencia. Creo que necesitamos agre-gar unas cuantas características más antes de entregárselos. De noser así, todo este prototipo se hundirá, no flotará”, dice Sam Monroe,miembro del equipo de análisis de sistemas que usted dirige. Loscuatro miembros del equipo están sentados juntos en una reunión deemergencia, y hablan sobre el prototipo que están desarrollandode un sistema de información para ayudar a los gerentes a supervisary controlar la temperatura del agua, el número de peces liberados yotros factores en un extenso criadero comercial de peces.“Ya tienen muchos pendientes. Digo, el sistema empezó concuatro características y en estos momentos llevamos ya nueve. Mesiento como si nadáramos aguas arriba en esto. No necesitan todoeso. Ni siquiera lo quieren”, argumenta Belle Uga, el segundomiembro del equipo de análisis de sistemas. “No me gusta criticar,pero pienso que debemos darles sólo lo básico. Tenemos suficientepor hacer así como está”.“Creo que Monroe está más cerca de lo correcto”, dice WallyIdle, el tercer miembro del equipo para contribuir a la plática e inten-tar que Belle muerda el anzuelo. “Tenemos que mostrarles lo mejorde nosotros, incluso aunque signifique que nos atrasemos unas sema-nas más de lo prometido para terminar nuestro prototipo”.“Muy bien”, dice Belle con cautela, “pero quiero que ustedesdos digan a los gerentes del criadero por qué no vamos a entregar elprototipo. Yo no quiero hacerlo. Y no estoy seguro de que los suel-ten del anzuelo tan fácilmente”.Monroe responde: “Bien, creo que podemos hacerlo, pero talvez no deberíamos hacer tanto alarde de atrasarnos más de lo pen-sado. No quiero hacer olas”.Wally entra en la conversación: “Cierto. ¿Por qué señalar nues-tros errores a todos? Además, cuando vean el prototipo se olvidaránde las quejas que tenían. Les encantará”.Belle descubre en su libreta un memo de su última reunión conlos gerentes del criadero y lo lee en voz alta: “Agenda para la reuniónde septiembre 22. ‘Prototipos: la importancia del desarrollo rápido,reunir el equipo de analistas de usuarios, obtener retroalimentaciónrápida para la modificación . . .”, la voz de Belle se apaga, omitiendolos últimos puntos en la agenda. Después de sus comentarios, Monroey Wally se miran uno al otro con desconsuelo.Monroe habla primero: “Creo que tratamos de preparar a to-dos para que recibieran un prototipo rápidamente y que se involu-craran desde el primer día”. Dándose cuenta de que usted ha estadocallado hasta ahora, Monroe continúa: “Pero aun así las aguas sonprofundas. ¿Qué piensas que debemos hacer ahora?”, le preguntaa usted.Como cuarto miembro del equipo de análisis de sistemas, ¿quéacciones piensa que se deben tomar? En un mensaje de correo electró-nico de uno o dos párrafos para los miembros de su equipo, respondaa las siguientes preguntas: ¿Hay que agregar más características alprototipo del sistema del criadero antes de entregarlo a los gerentesdel criadero para que experimenten con él? ¿Qué tan importante es eldesarrollo rápido del prototipo? ¿Cuáles concesiones pueden hacerseal agregar más características al prototipo, en comparación con entre-gar un prototipo más básico al cliente en el tiempo prometido? Com-plete su mensaje con una recomendación.www.xlibros.com
162 PARTE II • ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNO P O R T U N I D A D D E C O N S U L T O R Í A 6 . 4Este prototipo está todo mojado“Se puede modificar. Recuerda, no es un producto terminado”,afirma Sandy Beach, analista de sistemas para RainFall, una granempresa fabricante de bañeras de fibra de vidrio y canceles parabaños. Beach trata ansiosamente de tranquilizar a Will Lather, unprogramador de producción para RainFall, quien estudia minucio-samente la primera copia impresa producida por el prototipo delnuevo sistema de información.“Bueno, está bien”, dice Lather en voz baja. “No me gustaríamolestarla con ningún detalle. Veamos... sí, aquí están”, dice allocalizar finalmente el informe mensual que sintetiza la materiaprima que se compró, la que se utilizó y la que está en inventario.Lather continúa hojeando el pesado documento impreso. “Estoestá bien”. Al detenerse en un informe, exclama: “Voy a hacer que laSeñorita Fawcett copie esta parte para los de contabilidad”. Despuésde hojear unas cuantas páginas más, dice: “Y el de aseguramiento decalidad debería ver esta columna de cifras, aunque el resto no seade interés para él. Lo voy a circular y sacaré una copia para él. Tal veztambién deba pasar por teléfono una parte de esto al almacén”.Mientras Sandy se prepara para salir, Lather junta las páginasde los informes y comenta: “El nuevo sistema será una gran ayuda.Voy a asegurarme de que todos lo conozcan. Cualquier cosa serámejor que el ‘viejo monstruo’, de todos modos. Estoy feliz de quetengamos algo nuevo”.Sandy sale de la oficina de Will Lather con la sensación deestar un poco perdida en el mar. Después de pensarlo, empieza adarse cuenta por qué los departamentos de contabilidad, asegura-miento de calidad y el almacén no reciben lo que Will piensa quedeberían recibir. Sandy telefonea a unas cuantas personas y con-firma que lo que le dijo Lather es verdad. Necesitan los informes yno los están recibiendo.Más tarde en esa misma semana, Sandy se ve con Lather paravolver a canalizar la salida, así como cambiar algunas de las caracte-rísticas del sistema. Estas modificaciones permitirán a Lather obtenerrespuestas en pantalla en relación con los escenarios del tipo “qué pasasi” que tratan sobre los cambios en los precios que cobran los provee-dores, o los cambios en la proporción de calidad de la materia primadisponible de los proveedores (o ambos), así como también le permi-tirán ver lo que ocurriría si se atrasara un envío.Lather está visiblemente molesto con las sugerencias de Sandyen cuanto a modificar el prototipo y su salida. “Oh, por mí no lohagas. Está bien, de verdad. No me molesta acatar la responsabili-dad de canalizar la información a las personas. Siempre los estoybombardeando con información de todas formas. De verdad, estoestá funcionando muy bien. No me gustaría que nos lo quitaras eneste momento. Dejémoslo así como está”.Sandy está complacida de que Lather parezca estar tan satisfe-cho con la salida del prototipo, pero le preocupa que Lather no estédispuesto a cambiarlo, ya que ha estado inculcando a los usuariosque lo consideren como un producto en evolución y no como unoterminado.Escriba un informe breve para Sandy en el que incluya una listade cambios al prototipo en base a las reacciones de Lather. Describaen un párrafo las formas en que Sandy puede calmar los miedos deLather sobre “quitarle” el prototipo. Describa en un párrafo algunasde las acciones que se pueden tomar antes de probar un prototipo parapreparar a los usuarios en cuanto a su naturaleza evolutiva.costo relativamente bajo tales como los productos Microsoft Office, hay otros paquetes de software COTS ela-borados y costosos, pero muy útiles. Como ejemplo de implementación rápida de software COTS tenemos laforma en que la Catholic University utiliza el paquete de software COTS ERP conocido como People Soft, quese encarga de muchas de sus funciones basadas en Web.La Catholic University, junto con un grupo de consultoría en educación superior y PeopleSoft, emprendieroncon éxito la implementación rápida de un módulo de reclutamiento y admisiones de su software COTS. Lanzaronla implementación en abril de 1999 y para octubre de ese año habían implementado con éxito el reclutamientoy las admisiones para los estudiantes universitarios. Para noviembre de ese mismo año, habían implementadolas mismas funciones para los estudiantes de postgrado. Otros módulos el software COTS de PeopleSoft que seimplementan en la Catholic University son un catálogo de cursos completo en línea, el registro en línea y la ca-pacidad para que los estudiantes revisen sus calificaciones, transcripciones, cuentas y pagos de ayuda financieraen línea, desde cualquier parte.El papel que desempeñan los usuarios en los prototiposEl papel de los usuarios en los prototipos se puede resumir en dos palabras: participación honesta. Sin la parti-cipación de los usuarios, los prototipos no tienen mucho sentido. Los comportamientos precisos necesarios parainteractuar con un prototipo pueden variar, pero está claro que el usuario es fundamental para el proceso de crea-ción de prototipos. Teniendo en cuenta la importancia del usuario para el éxito del proceso, los miembros delequipo de análisis de sistemas deben fomentar y agradecer la entrada y protegerse contra su propia resistencianatural a cambiar el prototipo.Hay tres formas principales en las que un usuario puede ayudar con los prototipos:1. Experimentar con el prototipo.2. Ofrecer reacciones abiertas al prototipo.3. Sugerir lo que se puede agregar o quitar en el prototipo.www.xlibros.com
CAPÍTULO 6 • MODELADO ÁGIL Y PROTOTIPOS 163Los usuarios deben tener la libertad de experimentar con el prototipo. A diferencia de una simple lista de ca-racterísticas del sistema, el prototipo permite a los usuarios interactuar en forma práctica con el sistema. Montarun prototipo en un sitio Web interactivo es una forma de facilitar esta interacción.Otro aspecto del papel de los usuarios en los prototipos es que se requiere que expresen reacciones abiertasal mismo. Los analistas tienen que estar presentes por lo menos parte del tiempo cuando ocurre la experimenta-ción. De esta forma pueden observar las interacciones de los usuarios con el sistema y llegar a ver interaccionesque nunca planearon. En la figura 6.3 se muestra un formulario lleno para observar la experimentación del usua-rio con el prototipo. Algunas de las variables a observar son las reacciones de los usuarios al prototipo, sus sugeren-cias para cambiar o expandir el prototipo, sus innovaciones para usar el sistema en formas completamente nuevasy cualquier plan de revisión para el prototipo que ayude a establecer las prioridades.El tercer aspecto del papel que desempeñan los usuarios en los prototipos es su disposición para sugerirelementos que se puedan agregar o quitar en base a las características que hayan experimentado. La función delanalista es obtener tales sugerencias al asegurar a los usuarios que la retroalimentación que ellos proveen se tomaen serio, al observar a los usuarios a medida que interactúan con el sistema y al llevar a cabo entrevistas cortasy específicas con los usuarios en relación con sus experiencias con el prototipo. Aunque se pedirá a los usua-rios que articulen sugerencias e innovaciones para el prototipo, al final es responsabilidad del analista ponderaresta retroalimentación y traducirla en cambios funcionales en donde sea necesario. Para facilitar el proceso decreación del prototipo, el analista debe comunicar con claridad los propósitos de la creación de prototipos a losusuarios, junto con la idea de que los prototipos son valiosos sólo cuando los usuarios se involucran en formasignificativa.DESARROLLO RÁPIDO DE APLICACIONESEl desarrollo rápido de aplicaciones (RAD) es una metodología orientada a objetos para el desarrollo de sistemas,la cual incluye un método de desarrollo así como herramientas de software. Tiene sentido hablar sobre RAD ylos prototipos en el mismo capítulo ya que en concepto son muy parecidos. Ambos tienen como objetivo acortarel tiempo que se necesita comúnmente en un SDLC tradicional entre el diseño y la implementación del sistemade información. En última instancia, tanto RAD como la creación de prototipos tratan de cumplir en mejor gradocon los requerimientos de las empresas que cambian rápidamente. Una vez que se aprenden los conceptos sobreNombre del observador FechaNombre del sistema o proyecto Empresa o ubicaciónNombre o número de programa VersiónUsuario 1 Usuario 2 Usuario 3 Usuario 4Nombre de usuarioPeriodo de observaciónReacciones de losusuariosSugerencias delos usuariosInnovacionesPlanes de revisiónMichael Cerveris 1/06/2010Centro de datos de computación en nube Aquarius Water FiltersMant. Prev. 1Andy H. Pam H.1/06/2010 1/06/2010Favorable engeneral, seemocionó sobreel proyecto.¡Excelente!Agregar la fechaen que se realizóel mantenimiento.Colocar un númerode formulario en laparte superior parareferencia. Colocarla palabra SEMANALen el título.Modificar el1/08/2010Revisar conAndy y Pam.Formulario de evaluación del prototipoFIGURA 6.3Un paso importante en la creaciónde prototipos es registrar en formaadecuada las reacciones de losusuarios, sus sugerencias,innovaciones y planes de revisión.www.xlibros.com
164 PARTE II • ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNIdentificar objetivosy requerimientosde informaciónIntroducir elnuevo sistemaConstruirel sistemaPlaneación delos requerimientos ImplementaciónTaller de diseño RADTrabajar con losusuarios paradiseñar el sistemaFIGURA 6.4El taller de diseño RAD es elcorazón del proceso de desarrollointeractivo.la creación de prototipos, es mucho más fácil entender los aspectos básicos de RAD, que se puede considerarcomo una implementación específica de la creación de prototipos.Algunos desarrolladores consideran a RAD como una metodología útil para los nuevos entornos de comer-cio electrónico basado en Web, donde el denominado estatus del primer participante de un negocio podría serimportante. En otras palabras, para implementar una aplicación en Web antes que sus competidores, tal vez seaconveniente para las empresas que sus equipos de desarrollo experimenten con RAD.Fases de RADHay tres amplias fases para RAD en las que se involucra tanto a los usuarios como a los analistas en la evalua-ción, el diseño y la implementación. En la figura 6.4 se describen estas tres fases. Observe que RAD involucraa los usuarios en cada parte del esfuerzo de desarrollo, con una intensa participación en la parte comercial deldiseño.FASE DE PLANEACIÓN DE LOS REQUERIMIENTOS En esta fase, los usuarios y analistas se reúnen para identificarlos objetivos de la aplicación o el sistema, y para identificar los requerimientos de información que surgen apartir de estos objetivos. En esta fase se requiere una participación intensa de ambos grupos, y no consiste sóloen la firma de una propuesta o documento. Además, es probable que se involucren usuarios de distintos nivelesde la organización (como vimos en el capítulo 2). En la fase de planeación de los requerimientos, cuandotodavía se está lidiando con los requerimientos de información, usted tal vez esté trabajando con el CIO (si esuna organización extensa) y con los planeadores estratégicos, en especial si elabora una aplicación de comercioelectrónico diseñada para ampliar las miras estratégicas de la organización. La orientación en esta fase es hacia lasolución de problemas de negocios. Aunque la tecnología de información y los sistemas puedan incluso impulsaralgunas de las soluciones propuestas, el enfoque siempre permanecerá en alcanzar los objetivos de negocios.TALLER DE DISEÑO RAD Se trata de una fase de diseño y refinación que se puede caracterizar mejor como untaller. Al imaginar un taller, usted sabe que la participación es intensa, no pasiva, y que por lo general implicaponer manos a la obra. Comúnmente, los participantes se sientan en mesas redondas o en configuración de U, conlos escritorios unidos, y cada participante puede ver a los demás y hay espacio para trabajar en una computadoraportátil. Si es lo bastante afortunado como para tener disponible una sala de sistemas de soporte de decisiones engrupo (GDSS) en la empresa o por medio de una universidad local, úsela para realizar cuando menos parte de sutaller de diseño RAD.Durante el taller de diseño RAD, los usuarios responden a los prototipos funcionales reales y los analistasrefinan los módulos diseñados (mediante el uso de algunas de las herramientas de software que mencionaremosmás adelante) con base en las respuestas de los usuarios. El formato del taller es muy estimulante, y si están pre-sentes usuarios y analistas experimentados, no hay duda de que este esfuerzo creativo puede impulsar el desarro-llo con un ritmo acelerado.FASE DE IMPLEMENTACIÓN En la figura anterior puede ver que, durante el taller, los analistas trabajanintensivamente con los usuarios para diseñar los aspectos de negocio o los aspectos no técnicos del sistema. Tanpronto como se llega a un consenso sobre estos aspectos, y se crean y refinan los sistemas, se prueban los nuevossistemas o las nuevas partes de los mismos y después se introducen a la organización. Como RAD se puede usarpara las nuevas aplicaciones de comercio electrónico para las cuales no hay un sistema anterior, a menudo no haynecesidad ni posibilidad de ejecutar los sistemas anterior y nuevo en paralelo antes de la implementación.www.xlibros.com
CAPÍTULO 6 • MODELADO ÁGIL Y PROTOTIPOS 165Para este momento, el taller de diseño RAD debe haber generado emoción, la sensación de que los usuariosson propietarios de la nueva aplicación y aceptación de la misma. Por lo general, el cambio que se produce deesta forma es menos traumático que cuando un sistema se entrega y el usuario tuvo poca o nula participación.Comparación entre RAD y el SDLCEn la figura 6.5 puede comparar las fases del SDLC con las que se describieron con detalle para RAD al prin-cipio de esta sección. Tenga en cuenta que el propósito primordial de RAD es acortar el SDLC y de esta formaresponder más rápido a los requerimientos dinámicos de información de las organizaciones. El SDLC requiereun enfoque más metódico y sistemático que asegure la integridad y precisión; además tiene como intención lacreación de sistemas que integren bien a los procedimientos de negocios estándar y a la cultura.Introducirel sistemaIntroducir elsistemaTrabajar con losusuarios paradiseñar el sistemaConstruirel sistemaTaller de trabajo de diseño RADFases de planeación de requerimientos y análisisFases de diseño, desarrollo y documentaciónIdentificar objetivosy requerimientosde información Identificaroportunidadesy objetivosDeterminarrequerimientos deinformación;desarrollardiagramas E-RAnalizar lasnecesidades delsistema; desarrollarDFD y repositoriosde datosDiseñar elsistemarecomendadoDesarrollar ydocumentar elsistemaProbar elsistemaRetroalimentaciónde los usuariosUsar la entrada delos usuariosEl método RADpermite un desarrollorápido.El método SDLCpermite realizar demanera sistemáticay cuidadosa el análisis,diseño y documentaciónde los sistemas.FIGURA 6.5Comparación entre los métodosdel taller de diseño RAD y SDLC.www.xlibros.com
166 PARTE II • ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNLa fase del taller de diseño RAD es una desviación de las fases de diseño estándar del SDLC, debido a quese utilizan herramientas de software RAD para generar pantallas y exhibir el flujo en general de la ejecución dela aplicación. De esta forma, cuando los usuarios aprueban el diseño, lo hacen con base en una representaciónvisual del modelo y no sólo un diseño conceptual representado en papel, como es comúnmente el caso.La fase de implementación de RAD es en muchas formas menos extenuante que otros métodos, debido aque los usuarios ayudaron a diseñar los aspectos de negocios del sistema y están bien conscientes de los cambios queocurrirán. Hay pocas sorpresas y el cambio es algo que se espera con agrado. Al usar el SDLC, a menudo hayun extenso periodo durante el desarrollo y el diseño en que los analistas están separados de los usuarios. Duranteeste periodo los requerimientos pueden cambiar y tal vez los usuarios no estén conscientes de que el productofinal será distinto al que se esperaba muchos meses atrás.CUÁNDO USAR RAD Como analista, es conveniente que aprenda sobre todas las metodologías y herramientasque le sea posible para facilitar el proceso de hacer su trabajo de la manera más apropiada. El trabajo en algunasaplicaciones y sistemas requerirá el uso de ciertas metodologías. Considere usar RAD cuando:1. Su equipo incluya programadores y analistas que tengan experiencia con este método y se dé cualquiera delas siguientes condiciones.2. La empresa tenga motivos para presionar de manera que se pueda agilizar cierta parte del desarrollo de unaaplicación.3. Cuando trabaje con una aplicación original de comercio electrónico y su equipo de desarrollo crea que laempresa puede obtener una ventaja considerable frente a sus competidores por ser innovadora si estaaplicación está entre las primeras en aparecer en Web.4. Cuando los usuarios sean sofisticados y se involucren mucho con los objetivos organizacionales de laempresa.DESVENTAJAS DE RAD Al igual que con otros tipos de creación de prototipos, las dificultades con RAD surgendebido a que los analistas de sistemas tratan de apurar demasiado el proyecto. Suponga que se contratan doscarpinteros para construir dos cobertizos de almacenamiento para dos vecinos. El primer carpintero sigue lafilosofía del SDLC, mientras que el segundo sigue la filosofía RAD.El primer carpintero es sistemático, hace un inventario de todas las herramientas, podadoras de césped y pie-zas de muebles de jardín para determinar el tamaño correcto del cobertizo, diseña un plano del cobertizo y escribeespecificaciones para cada pieza de madera y accesorios de ferretería. El carpintero construye el cobertizo sindesperdiciar muchos recursos y cuenta con documentación precisa sobre cómo construyó el cobertizo, en caso deque alguien desee construir otro igual, repararlo o pintarlo usando el mismo color.El segundo carpintero empieza de inmediato con el proyecto mediante una estimación del tamaño del cober-tizo, consigue un camión lleno de madera y accesorios de ferretería, construye una estructura y habla sobre ellacon el dueño de la propiedad a medida que se hacen modificaciones cuando no hay ciertos materiales disponi-bles, y hace un viaje para devolver la madera que no se utilizó. El cobertizo se construye con mayor rapidez, perosi no se dibuja un plano, la documentación nunca existirá.MODELADO ÁGILLos métodos ágiles son una colección de metodologías innovadoras para el desarrollo de sistemas, las cuales secentran en los usuarios. En esta sección aprenderá sobre valores y principios, actividades, recursos, prácticas,procesos y herramientas asociadas con las metodologías ágiles. A estos métodos se les acreditan muchos proyec-tos exitosos de desarrollo de sistemas y en muchos casos también se les acredita el haber rescatado empresas deun sistema fallido diseñado mediante el uso de una metodología estructurada.Valores y principios del modelado ágilLa metodología ágil se basa no sólo en resultados, sino también en valores, principios y prácticas. Los valores yprincipios establecidos son esenciales para la programación ágil; estos valores y principios crean el contexto parala colaboración entre programadores y clientes. Para poder ser analistas ágiles, hay que adherirse a los siguientesvalores y principios desarrollados por Beck (2000) en su trabajo sobre el modelado ágil, al cual denominó “pro-gramación extrema” o “XP”.CUATRO VALORES DEL MODELADO ÁGIL Hay cuatro valores que crean un entorno en el que tanto los desarrolla-dores como las empresas pueden obtener el mismo servicio. Como a menudo hay tensión entre lo que hacen losdesarrolladores a corto plazo y lo comercialmente deseable a largo plazo, es importante propugnar en forma deliberadalos valores que formarán la base para actuar en conjunto en un proyecto de software. Los cuatro valores soncomunicación, simpleza, retroalimentación y valor, como se muestra en la figura 6.6.www.xlibros.com
CAPÍTULO 6 • MODELADO ÁGIL Y PROTOTIPOS 167Empecemos con la comunicación. En todo esfuerzo humano existe la posibilidad de una mala comunica-ción. Los proyectos de sistemas que requieren de una constante actualización y diseño técnico son especialmentepropensos a dichos errores. Si aunamos a ello tiempos de entrega ajustados, jerga especializada y el estereotipode que los programadores prefieren hablar con las máquinas en vez de las personas, terminamos con el potencial detoparnos con serios problemas de comunicación. Los proyectos pueden sufrir retrasos; se puede resolver el pro-blema incorrecto; los programadores reciben castigo incluso hasta por llevar los problemas a los gerentes; lagente sale o se une a mitad del proyecto sin las actualizaciones apropiadas, y la letanía continúa.Las prácticas ágiles comunes como la programación en pareja (dos programadores que colaboran entre sí;describiremos esta práctica más adelante en el capítulo), la estimación de tareas y la prueba de unidades depen-den mucho de la buena comunicación. Los problemas se corrigen con rapidez, los orificios se tapan y el pensa-miento débil se fortalece rápidamente por medio de la interacción con otros miembros del equipo.El segundo valor de la metodología ágil es la simpleza. Cuando trabajamos en un proyecto de desarrollo desoftware, nuestra primera tendencia es abrumarnos con la complejidad y tamaño de la tarea. Sin embargo, no po-demos correr sino hasta aprender a caminar, ni podemos caminar hasta no aprender a erguirnos. La simpleza parael desarrollo de software significa que debemos empezar con la cosa más simple que podamos hacer.El valor ágil de la simpleza nos pide hacer la cosa más sencilla hoy, a sabiendas de que tal vez mañana ten-gamos que cambiarla un poco. Para ello debemos estar enfocados claramente en los objetivos del proyecto, locual es en realidad un valor básico.La retroalimentación es el tercer valor básico importante cuando usamos una metodología de programa-ción extrema. Al considerar la retroalimentación en este contexto, es bueno tener en cuenta que está implicadacon el concepto del tiempo. Una buena retroalimentación concreta que sea útil para el programador, el analistay el cliente puede ocurrir en cuestión de segundos, minutos, días, semanas o meses, dependiendo de lo que serequiera, de quién se esté comunicando y de lo que se pretenda hacer con la retroalimentación. Un compañeroprogramador podría pasarle un caso de prueba que quebrante el código que usted acaba de escribir, pero esaretroalimentación es invaluable en términos de poder cambiar lo que no funciona antes de que se acepte y se in-cruste en el sistema.La retroalimentación ocurre cuando los clientes crean pruebas funcionales para todas las historias que hayanimplementado posteriormente los programadores (más adelante en el capítulo podrá ver más sobre las historiasde los usuarios). La retroalimentación crítica sobre la programación de fechas y tiempos proviene de los clientesque comparan el objetivo del plan con el progreso realizado hasta ese momento. La retroalimentación ayuda alos programadores a realizar ajustes y permite a la empresa empezar a experimentar con mucha antelación lo queserá el nuevo sistema una vez que sea completamente funcional.La valentía es el cuarto valor en la programación ágil. El valor de la valentía tiene que ver con un nivel deconfianza y confort que debe existir en el equipo de desarrollo. Significa no tener miedo de desperdiciar unatarde o un día de programación y empezar de nuevo si no todo está bien. Significa poder estar en contacto conlos instintos de uno mismo (y los resultados de prueba) en relación con lo que funciona y lo que no.Valentía también significa responder a la retroalimentación concreta, actuando con base en las corazonadasde sus compañeros de equipo cuando ellos piensan que tienen una forma más simple y mejor de obtener su ob-jetivo. La valentía es un valor de alto riesgo y un gran nivel de recompensa, el cual fomenta la experimentaciónque puede llevar al equipo a obtener su objetivo con más rapidez de una manera innovadora. Valentía significa queusted y los miembros de su equipo confían entre sí y en sus clientes lo suficiente como para actuar en formasque mejoren de manera continua lo que se está llevando a cabo en el proyecto, incluso si esto implica descartarcódigo, reformular las soluciones o simplificar más las metodologías. La valentía también implica que usted,como analista de sistemas, aplique con entusiasmo las prácticas de la metodología ágil.Los analistas pueden reflejar de una mejor forma los cuatro valores por medio de una postura de humildad.A través de la historia, el software de computadora se desarrolló por expertos que a menudo pensaban que sabíanSimplezaRetroalimentaciónComunicaciónV a l orValoreságilesFIGURA 6.6Los valores son imprescindiblespara la metodología ágil.www.xlibros.com
168 PARTE II • ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNcómo operar una empresa de una mejor forma que los clientes locales, que eran los verdaderos expertos. Con fre-cuencia, a los expertos de computadora se les denominaba “gurús”. Algunos de los gurús exhibían grandes egose insistían en su infalibilidad, incluso cuando sus clientes no lo creían así. Muchos gurús carecían de la virtud dela humildad.Es imprescindible mantener una postura humilde durante el desarrollo de sistemas. Usted debe hacerse a laidea de que si el usuario está expresando una dificultad, entonces hay que lidiar con ella. No podemos ignorarla.Los modeladores ágiles son analistas de sistemas que hacen sugerencias, expresan opiniones pero nunca insistenen que tienen la razón el 100 por ciento del tiempo. Los modeladores ágiles poseen la suficiente confianza en símismos como para permitir que sus clientes cuestionen, critiquen y, algunas veces, se quejen sobre el sistemaque están desarrollando. Los analistas aprenden de sus clientes, quienes han estado en el negocio durante unbuen tiempo.LOS PRINCIPIOS BÁSICOS DEL MODELADO ÁGIL En un mundo perfecto, los clientes y su equipo de desarrollode software se verían directamente a los ojos y no sería necesaria ninguna otra forma de comunicación. Todosestaríamos de acuerdo en todo momento. Sabemos que el mundo ideal no existe, Pero ¿cómo podemos acercarnuestros proyectos de desarrollo de software a ese ideal? Parte del por qué no ocurrirá esto se debe a quehasta ahora estamos tratando de operar con base en un sistema impreciso de valores compartidos. Son un buenprincipio, pero en realidad no se ponen en la práctica hasta el punto en que nos sea posible medir nuestro éxitosignificativamente. Por lo tanto, trabajamos para derivar los principios básicos que pueden ayudarnos a verificarque lo que realmente estamos haciendo en nuestro proyecto de software sea estar a la altura de los valores quecompartimos.Los principios ágiles son reflejos y especificaciones de los valores ágiles. Sirven como lineamientos que los de-sarrolladores pueden seguir al desarrollar sistemas. También sirve para diferenciar a las metodologías ágiles de lasmetodologías más tradicionales basadas en planes como SDL, así como las metodologías orientadas a objetos.Beck y sus colaboradores fueron los primeros en describir los principios ágiles, que han evolucionado desdeentonces. Estos principios se pueden expresar en una serie de dichos tales como:1. Satisfacer al cliente por medio de la entrega de software funcional.2. Adoptar el cambio, incluso si se introduce en las últimas etapas del desarrollo.3. Seguir entregando software funcional en incrementos y con frecuencia.4. Fomentar a los clientes y analistas a que trabajen juntos a diario.5. Confiar en los individuos motivados para que realicen su trabajo.6. Promover la conversación cara a cara.7. Concentrarse en hacer que el software funcione.8. Fomentar el desarrollo continuo, regular y sostenible.9. Adoptar la agilidad con especial atención en un diseño lúcido.10. Apoyar a los equipos autoorganizados.11. Proveer retroalimentación rápida.12. Fomentar la calidad.13. Revisar y ajustar el comportamiento de vez en cuando.14. Adoptar la simpleza.Con frecuencia escuchará a los desarrolladores ágiles a medida que comunican su opinión por medio dedichos como los antes mencionados, o incluso frases más simples tales como “modelar con un propósito”, “elsoftware es su objetivo primario” y “viaje ligero”, una forma de decir que es suficiente con poca documentación.Escuche estos dichos con cuidado. En el capítulo 16 hablaremos más sobre ellos (algunos los llaman proverbios)bajo una herramienta de análisis y documentación conocida como FOLKLORE. Las frases pegajosas son fácilesde entender, memorizar y repetir. Son muy efectivas.Actividades, recursos y prácticas del modelado ágilEl modelado ágil involucra una serie de actividades a completar en cierto momento durante el proceso de desa-rrollo ágil. En esta sección hablaremos sobre esas actividades, los recursos y las prácticas que son únicas para lametodología ágil.CUATRO ACTIVIDADES BÁSICAS DEL DESARROLLO ÁGIL Hay cuatro actividades básicas de desarrollo que utilizanlos métodos ágiles: codificar, probar, escuchar y diseñar. El analista necesita identificar el grado de esfuerzorequerido por cada actividad para compararlo con los recursos necesarios para completar el proyecto.La codificación es la actividad indispensable. Un autor establece que lo más valioso que recibimos del có-digo es el “aprendizaje”. El proceso es fundamentalmente el siguiente: elija una idea, codifíquela, pruébela ywww.xlibros.com
CAPÍTULO 6 • MODELADO ÁGIL Y PROTOTIPOS 169compruebe si la idea era lógica. El código también se puede usar para comunicar ideas que, de otra manera,permanecerían borrosas o deformes; cuando examine su código, tal vez incluso le surjan nuevas ideas. El códigofuente es la base de un sistema viviente. Es esencial para el desarrollo.La prueba es la segunda actividad básica del desarrollo. La metodología ágil considera que las pruebasautomatizadas son imprescindibles. La metodología ágil aboga por la escritura de pruebas para verificar codi-ficación, funcionalidad, rendimiento y cumplimiento. El modelado ágil se basa en las pruebas automatizadas;existen extensas bibliotecas de pruebas para la mayoría de los lenguajes de programación. Estas pruebas necesitanactualizarse según se requiera durante el progreso del proyecto.Hay razones tanto de largo como de corto plazo para las pruebas. Las pruebas a corto plazo nos ofrecenuna confianza extrema sobre lo que estamos construyendo. Si las pruebas se cumplen a la perfección, podemoscontinuar con una confianza renovada. A largo plazo, las pruebas mantienen vivo a un sistema y permiten rea-lizar cambios durante un periodo más extenso del que hubiera sido posible si no se hubieran escrito o realizadopruebas.Escuchar es la tercera actividad básica del desarrollo. En el capítulo 4 aprendimos sobre la importancia deescuchar durante las entrevistas. En la metodología ágil, el proceso de escuchar se lleva al extremo. Los desa-rrolladores utilizan la escucha activa para oír a su socio de programación. En el modelado ágil hay menos de-pendencia de la comunicación formal por escrito, por lo que escuchar se convierte en una habilidad de sumaimportancia.El desarrollador también utiliza la escucha activa con el cliente. Los desarrolladores asumen que no sabennada sobre las empresas a las que están ayudando, por lo que deben escuchar con cuidado a los empresarios paraobtener las respuestas a sus preguntas. El desarrollador necesita llegar a comprender lo que es la escucha efec-tiva. Si usted no escucha, no sabrá qué codificar o probar.La cuarta actividad básica en el desarrollo es el diseño, que es una forma de crear una estructura para orga-nizar toda la lógica en el sistema. El diseño es evolutivo, y por ende los sistemas que se diseñan mediante el mé-todo ágil se conceptualizan como sistemas que siempre están en evolución y siempre están siendo diseñados.A menudo es simple lograr un buen diseño. Éste debe permitir también cierto grado de flexibilidad. Diseñarbien permite extender el sistema realizando cambios en un solo lugar. El diseño efectivo posiciona la lógica cercade los datos sobre los cuales va a operar. Por encima de todo, el diseño debe ser útil para todos aquellos que lonecesiten a medida que avanza el esfuerzo de diseño, incluyendo clientes y programadores.CUATRO VARIABLES DE CONTROL DE RECURSOS DEL MODELADO ÁGIL Es admirable completar todas lasactividades en el proyecto a tiempo y dentro de todas las restricciones pero, como probablemente habráaveriguado para estos momentos, para lograr esto es imprescindible administrar el proyecto correctamente.Y esto implica no sólo reunir todas las tareas y recursos; también significa que el analista sacrifique algunasventajas por otras. Algunas veces el costo puede estar predeterminado, mientras que otras veces el tiempo puedellegar a ser el factor más importante. A continuación hablaremos sobre estas variables de control de recursos(tiempo, costo, calidad y alcance).TIEMPO Hay que asignar tiempo suficiente para completar el sistema, y entender que lo necesita para variasactividades distintas: escuchar a los clientes, diseñar, codificar y probar.Uno de nuestros amigos es propietario de un restaurante de comida china. Hace poco se quedó sin uno de losmiembros de su confiable equipo, quien regresó a Hong Kong para casarse. El dueño ocupó el lugar en la cocinapara que la comida se sirviera a tiempo, pero dejó de estar al frente dando la bienvenida a sus clientes de la formausual. Sacrificó la actividad de escucha para cumplir con otra actividad, pero en este caso se percató de que estodañaba su negocio. Los clientes querían la atención.Lo mismo ocurre en el desarrollo de sistemas. Puede crear software de calidad, pero fracasar a la hora deescuchar. Puede elaborar un diseño perfecto, pero no asignar el tiempo suficiente como para probarlo. El tiempoes difícil de manejar. Si se agota el tiempo, ¿qué debe hacer?El método ágil desafía la noción de que más tiempo nos dará los resultados que queremos. Tal vez el clienteprefiera que usted termine a tiempo en vez de extender el tiempo de entrega para agregar otra característica.A menudo descubrimos que los clientes son felices si parte de la funcionalidad está trabajando a tiempo. Nuestraexperiencia muestra que con frecuencia un cliente está un 80 por ciento satisfecho con el primer 20 por cientode la funcionalidad. Esto significa que cuando completemos el otro 80 por ciento del proyecto, el cliente tal vezsólo esté un poco más feliz de lo que estaba cuando habíamos completado sólo el 20 por ciento. La moraleja aquíes que debe tener cuidado de no extender su tiempo de entrega. El método ágil insiste en terminar a tiempo.COSTO El costo es la segunda variable que podríamos ajustar. Suponga que las actividades de codificación,diseño, prueba y escucha están sobrecargando el proyecto y los recursos que invertimos en el tiempo, alcance y lawww.xlibros.com
170 PARTE II • ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNcalidad no son suficientes, incluso aunque dediquemos una cantidad normal al costo para equilibrar el proyecto.En esencia, tal vez tengamos que contribuir más recursos que requieran dinero para balancear el proyecto.La forma más sencilla de aumentar el gasto (y por ende los costos) es contratar más personal. Esto puedeparecer la solución perfecta. Si contratamos más programadores terminaremos más rápido. ¿Cierto? No nece-sariamente. Imagine contratar dos personas para reparar un techo y aumentar el número a cuatro. Pronto lostrabajadores estarán chocando entre sí. Lo que es más, necesitan preguntarse unos a otros qué es lo que quedapor hacer. Y si aparece una tormenta eléctrica, nadie estará trabajando. Pasar de dos a cuatro no significa que serequerirá la mitad del tiempo. Considere el aumento requerido en la comunicación y otros costos intangibles ala hora de decidir si va a contratar más personal. Recuerde que cuando se unen nuevos miembros a un equipo,no conocen el proyecto ni al equipo. Van a hacer más lentos a los miembros originales debido a que éstos debendedicar parte del tiempo para ayudar a que los nuevos miembros se pongan al corriente.El tiempo extra no ayuda mucho tampoco. Aumenta el costo, pero no siempre aumenta la productividad.Los programadores cansados son menos efectivos que los programadores que se mantienen alertas, tardan muchotiempo en completar una tarea y también cometen errores que cuestan incluso más tiempo corregir.¿Hay algo más en lo que podamos gastar nuestro dinero? Tal vez. A medida que lea los capítulos siguientes,conocerá varias herramientas que ofrecen soporte para los analistas y programadores. A menudo estas herramien-tas son una inversión sabia. Por ejemplo, los analistas utilizan paquetes gráficos tales como Microsoft Visio paracomunicar ideas sobre el proyecto a los demás, y las herramientas CASE tales como Visible Analyst tambiénayudan a agilizar los proyectos.Incluso el nuevo hardware podría ser un gasto que valga la pena. Las computadoras portátiles y los teléfo-nos inteligentes mejoran la productividad cuando está uno alejado de la oficina. Las pantallas de mayor tamaño,los teclados y ratones con capacidad para Bluetooth y tarjetas gráficas más potentes también pueden mejorar laproductividad.CALIDAD La tercera variable de control de recursos es la calidad. Si los sistemas ideales son perfectos, ¿por quéhay que poner tanto esfuerzo en dar mantenimiento a los sistemas? ¿Acaso estamos practicando ya el desarrolloágil al sacrificar la calidad en el desarrollo de software? En el capítulo 16 veremos la importancia de la calidad ylos métodos (como TQM y Seis Sigma) que ayudan a asegurar un alto grado de calidad en el software.Sin embargo, la filosofía ágil permite al analista ajustar este recurso y tal vez hacer un menor esfuerzo pormantener la calidad que si se utilizara otro método. La calidad se puede ajustar en forma externa e interna: la in-terna involucra la prueba de software con base en factores tales como la funcionalidad (¿Qué es lo que se suponeque debe hacer un programa?) y el cumplimiento (¿Cumple el software con ciertos estándares de conformidad yse puede mantener?). Por lo general no es redituable experimentar con la calidad interna.Eso nos deja con la calidad externa, o la forma en que el cliente percibe el sistema. Al cliente le interesa elrendimiento. Algunas de las preguntas que un cliente puede hacer son: ¿Actúa el programa en forma confiable(o aún existen errores en el software)? ¿Es efectiva la salida?, ¿llega a tiempo? ¿Se ejecuta el software sin es-fuerzo? ¿Es la interfaz de usuario fácil de comprender y usar?En el extremo de la filosofía del desarrollo ágil es permisible sacrificar ciertas cuestiones de calidad exter-nas. Para que el sistema se pueda liberar a tiempo, tal vez el cliente tenga que lidiar con algunos errores en elsoftware. Si queremos cumplir nuestro tiempo de entrega, tal vez la interfaz de usuario no sea perfecta. Podre-mos mejorarla en una próxima versión.Los fabricantes de software comercial de venta en canales convencionales sacrifican la calidad: podemosdebatir si es o no es la metodología correcta. Por lo tanto, no le sorprenda cuando las aplicaciones de software desu PC (sin mencionar su sistema operativo y explorador Web) se actualicen con frecuencia, si los desarrolladoresutilizan la programación extrema como una de sus prácticas ágiles.ALCANCE Por último tenemos el alcance. En la metodología ágil, para determinar el alcance hay que escuchar alos clientes y hacer que escriban sus historias, que se examinan después para determinar cuánto se puede haceren un tiempo dado para satisfacerlos. Las historias deben ser breves y fáciles de comprender. Más adelante enel capítulo describiremos estas historias con más detalle; mientras tanto, he aquí un breve ejemplo que muestracuatro historias de un sistema en línea de viajes en avión. Cada una de las historias se muestra en negrita:Mostrar vuelos alternativosPreparar una lista de los cinco vuelos más económicos.Ofrecer alternativas más económicasSugerir a los clientes que viajen otro día, que tomen un especial de fin de semana, promocionesespeciales o que utilicen otros aeropuertos alternos.Comprar un boletoPermitir al cliente comprar boletos directamente con una tarjeta de crédito (verificar validez).www.xlibros.com
CAPÍTULO 6 • MODELADO ÁGIL Y PROTOTIPOS 171Permitir al cliente elegir su asientoLlevar al cliente a una representación visual del aeroplano y pedirle que seleccione un asiento.Lo ideal sería que el analista pudiera determinar cuánto tiempo y dinero se requieren para completar cadauna de estas historias, y que pudiera establecer el nivel de calidad para cada una de ellas también. Es obvio queeste sistema no debe sacrificar la calidad, ya que de otra forma las compras con tarjeta de crédito serían inválidaso los clientes podrían presentarse en el aeropuerto sin reservaciones.Una vez más, las prácticas ágiles permiten medidas extremas, por lo que para mantener la calidad, adminis-trar el costo y completar el proyecto a tiempo, tal vez sea conveniente para el analista ágil ajustar el alcance delproyecto. Para lograr esto hay que hacer que el cliente esté de acuerdo en retrasar una o más de las historias hastala siguiente versión del software. Por ejemplo, tal vez la funcionalidad de permitir que los clientes seleccionensus propios asientos se pueda postergar para la próxima versión.En resumen, el analista ágil puede controlar cualquiera de las cuatro variables de recursos de tiempo, costo,calidad y alcance. La agilidad exige medidas extremas y considera muy importante el hecho de completar unproyecto a tiempo. Para ello hay que hacer sacrificios y el analista ágil descubrirá que es difícil decidir en cuantoa las concesiones que debe hacer.CUATRO PRÁCTICAS ÁGILES BÁSICAS Hay cuatro prácticas básicas que marcan una diferencia considerable entrela metodología ágil y las demás metodologías: entregas pequeñas, semana de trabajo de 40 horas, alojar al clienteen el sitio, y programar en pareja.1. En las entregas pequeñas, el equipo de desarrollo comprime el tiempo entre entregas de su producto. Envez de entregar una versión completa con todas las características en un año, mediante el uso de la prácticade entregas pequeñas reducen el tiempo de entrega al resolver las características más importantes primero yentregar ese sistema o producto para mejorarlo más adelante.2. En la semana de trabajo de 40 horas, los equipos de desarrollo ágil patrocinan una práctica básica cultural enla que el equipo trabaja intensamente durante una semana laboral de 40 horas. Como corolario de estapráctica, la cultura refuerza la idea de que trabajar tiempo extra por más de una semana consecutiva esdañino para la salud del proyecto y de los desarrolladores. Esta práctica básica intenta motivar a losmiembros del equipo para que trabajen en forma intensa y después se tomen tiempo de descanso, para quecuando regresen se encuentren relajados y menos estresados. Esto ayuda a los miembros del equipo adetectar problemas con más facilidad, al tiempo que evita costosos errores y omisiones debido a unrendimiento inefectivo o al agotamiento.3. Alojar al cliente en el sitio; es decir, tener “en casa”, durante el proceso de desarrollo, a un usuario expertoen el aspecto de negocios relacionado con el trabajo de desarrollo de sistemas. Esta persona es muyimportante para el proceso: escribe las historias de los usuarios, se comunica con los miembros del equipo,ayuda a asignar prioridades y equilibrar las necesidades a largo plazo de la empresa, y toma decisiones encuanto a la característica que se deba resolver primero.4. La programación en pareja es una importante práctica básica. Aquí usted trabaja con otro programador queusted mismo haya elegido. Ambos realizan la codificación y las pruebas. A menudo la persona con másexperiencia emprenderá el proceso de codificación primero, pero a medida que la menos experimentada seempiece a involucrar, el que tenga la visión clara sobre el objetivo será quien se encargue de la codificación.Cuando usted le pide a otra persona que trabajen juntos, el protocolo de la programación en pareja indicaque debe estar obligado a aceptar. Al trabajar con otro programador usted puede comprender con másclaridad su forma de pensar. Las parejas cambian con frecuencia, en especial durante la etapa de exploracióndel proceso de desarrollo. La programación en pareja ahorra tiempo, reduce el pensamiento torpe, suscita lacreatividad y es una forma divertida de programar.En la figura 6.7 se muestra la forma en que las prácticas ágiles apoyan y se interrelacionan con las activida-des, recursos y valores del desarrollo ágilEl proceso de desarrollo ágilEl modelado es una palabra clave en los métodos ágiles. El modelado ágil aprovecha la oportunidad de crearmodelos que pueden ser lógicos, como los dibujos de los sistemas, o maquetas de tamaño natural como losprototipos que describimos anteriormente en este capítulo. Un proceso ordinario de modelado ágil podría ser elsiguiente:1. Escuchar las historias de los usuarios por medio del cliente.2. Dibujar un modelo del flujo de trabajo lógico para apreciar las decisiones de negocios representadas en lahistoria de un usuario.3. Crear historias de usuarios con base en el modelo lógico.www.xlibros.com
172 PARTE II • ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓN4. Desarrollar algunos prototipos de visualización. Para ello hay que mostrar a los clientes el tipo de interfazque tendrán.5. Usar la retroalimentación de los prototipos y los diagramas del flujo de trabajo lógico para desarrollar elsistema hasta crear un modelo físico de datos.Ágil es la otra palabra clave en el modelado ágil. Ágil implica capacidad de maniobrar. Los sistemas ac-tuales, en especial los que están basados en Web, imponen demandas gemelas: entregar el software tan prontocomo sea posible y seguir mejorándolo para agregar nuevas características. El analista de sistemas necesita tenerla capacidad y los métodos para crear aplicaciones dinámicas, sensibles al contexto, escalables y evolutivas. Elmodelado ágil como tal es un método que adopta el cambio.ESCRIBIR LAS HISTORIAS DE LOS USUARIOS Incluso cuando el título de esta sección es “Escribir las historiasde los usuarios”, el énfasis en la creación de las historias de los usuarios está en la interacción oral entre losdesarrolladores y los usuarios, y no en la comunicación escrita. En las historias de los usuarios, el desarrolladorbusca principalmente obtener de los usuarios requerimientos de negocios pertinentes. Por lo general, los usuariosse involucran en conversaciones a diario con los desarrolladores en relación con el significado de las historias deusuario que escribieron. Estas conversaciones frecuentes son interacciones intencionales que tienen como metaevitar malos entendidos o malas interpretaciones en cuanto a los requerimientos de los usuarios. Por lo tanto, lashistorias de usuarios sirven como recordatorios para los desarrolladores de que deben sostener conversacionesdedicadas a esos requerimientos.A continuación se muestra como ejemplo una serie de historias escritas para una aplicación de comercioelectrónico de un comerciante de libros, CD y demás medios. Las historias proporcionan una imagen bastantecompleta de lo que se necesita en cada una de las etapas del proceso de compras, además de ser muy cortas yfáciles de comprender. El objetivo aquí es sacar a la luz todas las necesidades y preocupaciones relacionadas conla tienda en línea. Aunque no se puede obtener suficiente información de una historia como para empezar a pro-gramar, un desarrollador ágil podría empezar a ver la imagen general con la suficiente claridad para empezar aestimar lo que se requiere para completar el proyecto. Las historias son:Semanadetrabajode40horasClienteenelsitioEntregaspequeñasProgr a maciónenparejaCostoCalidadTiempoA l c ancePruebaEscuchaCodificaciónDiseñoActividades ágilesPrácticas ágiles básicasRecursos ágilesSimplezaRetroalimentaciónComunicaciónValentíaValores ágilesFIGURA 6.7Las prácticas básicas estáninterrelacionadas con los recursos,actividades y valores del modeladoágil.www.xlibros.com
CAPÍTULO 6 • MODELADO ÁGIL Y PROTOTIPOS 173Dar la bienvenida al clienteSi el cliente ya ha visitado antes este sitio y con la misma computadora, dar la bienvenida al cliente devuelta a la tienda en línea.Mostrar los especiales en la página inicialMostrar los libros recientes u otros productos que se hayan introducido en forma reciente. Si el cliente seidentificó, personalizar las recomendaciones en base a ese cliente específico.A T R A C T I V O D E L A M A CAsí como las metodologías ágiles representan una alternativa para el SDLC, OmniFocus es una alternativa a MicrosoftProject u otros métodos para realizar gráficos de Gantt o diagramas PERT.Un observador casual podría pensar que los métodos ágiles carecen de estructura debido a que los sistemas seconstruyen sin especificar detalles ni documentación. Un estudiante de los métodos ágiles descubre que en realidad hayun buen grado de estructura en la metodología ágil. Los principios incluyen apegarse a la semana de trabajo de 40 horasy la coordinación por medio de la programación en parejas. Un analista que adopte las técnicas ágiles necesita una formade establecer los objetivos, mantenerse dentro del presupuesto, establecer prioridades para las características y averi-guar cómo hacer las cosas.OmniFocus se basa en un sistema alternativo de administración de tareas desarrollado por David Allen, al cual se leconoce como Getting Things Done. Este principio primordial trata sobre liberar la mente de recordar cosas, de manera quepodamos concentrarnos en llevarlas a cabo. Un analista que utilice este sistema tiene que efectuar cinco acciones: recolec-tar, procesar, organizar, revisar y hacer.Los analistas de sistemas que utilicen OmniFocus tienen que recolectar elementos de su navegador Web, su libretade direcciones o su calendario, o de la mayoría de las aplicaciones en una Mac. El analista puede categorizar estoselementos o asignarlos a un proyecto más grande. OmniFocus incluye un modo de planeación para que el analista puedaver qué tarea forma parte de un proyecto más grande, así como un modo de contexto para organizar las tareas de maneraque el analista conozca todas las tareas que haya que realizar vía telefónica, navegando en Web o mediante el correoelectrónico. OmniFocus también está disponible como aplicación para iPhone.FIGURA 6.MACOmniFocus de The Omni Group.www.xlibros.com
174 PARTE II • ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNBuscar el producto deseadoIncluir un motor de búsqueda efectivo que localice el producto específico, así como productos similares.Mostrar títulos similares y disponibilidadMostrar los resultados de la búsqueda en una nueva página Web.Permitir que el cliente pida más detallesOfrecer al cliente más detalles sobre los productos, como páginas de muestra de un libro, más fotografíasde un producto o la reproducción parcial de una pista de un CD.Mostrar reseñas del productoCompartir los comentarios de otros clientes sobre el producto.Colocar un producto en un carrito de comprasFacilitar al cliente el proceso de hacer clic en un botón para colocar el producto en un carrito decompras con los productos que pretende comprar.Mantener el historial de compras en un archivoMantener los detalles sobre el cliente y sus compras en una cookie en la computadora del cliente.También mantener la información sobre su tarjeta de crédito para agilizar el proceso de pasar a pagarSugerir libros similaresIncluir fotografías de otros libros que tengan temas similares o que hayan sido escritos por los mismosautores.Pasar a pagarConfirmar la identidad del cliente.Revisar las comprasPermitir que el cliente revise las compras.Continuar con el proceso de compraOfrecer al cliente la oportunidad de realizar más compras al mismo tiempo.Aplicar métodos de acceso directo para agilizar el proceso de pagoSi se conoce la identidad del cliente y la dirección de entrega coincide, agilizar la transacción al aceptarla tarjeta de crédito en el archivo y el resto de las preferencias del cliente, como el método de envío.Agregar nombres y direcciones de envíoSi la compra es un regalo, permitir que el cliente introduzca el nombre y la dirección de la persona quelo va a recibir.Ofrecer opciones de envíoPermitir al cliente elegir un método de envío con base en el costo.Completar la transacciónTerminar la transacción. Pedir la confirmación de la tarjeta de crédito si la dirección de envío es distintade la dirección del cliente que se tiene en archivo.Es fácil ver que historias no faltan. El analista ágil necesita elegir unas cuantas, completar la programación yentregar un producto. Una vez hecho esto, se seleccionan más historias y se entrega una nueva versión hasta quese incluyan todas en el sistema (o cuando el analista y el cliente estén de acuerdo en que una historia no vale lapena o no es urgente, por lo que no necesita incluirla).En la figura 6,8 se muestra un ejemplo de cómo podría aparecer una historia de usuario para un desarrolla-dor ágil. En las tarjetas (o en formato electrónico) el analista podría identificar primero la necesidad u oportu-nidad, para después continuar con una breve descripción de la historia. El analista puede empezar a pensar entérminos generales sobre las actividades a completar, así como los recursos que se requerirán para terminar elproyecto. En este ejemplo del comerciante en línea, el analista indica que la actividad de diseño requerirá de unesfuerzo superior al promedio, y que se requieren recursos de tiempo y calidad por arriba del promedio. Tengaen cuenta que el analista no trata de ser más preciso de lo actualmente posible en la estimación, pero de todasformas es un ejercicio útil.SCRUM Scrum o melé es otra de las metodologías ágiles. La palabra scrum proviene de una posición inicial enel rugby, donde los equipos forman un grupo y pelean por la posesión de la pelota. Fundamentalmente, scrum serefiere al trabajo en equipo, algo similar a lo que se necesita para jugar rugby.Así como los equipos de rugby llegan a un juego con una estrategia general, también los equipos de desa-rrollo empiezan el proyecto con un plan de alto nivel que se puede modificar al instante, a medida que avanza el“juego”. Los miembros del equipo de desarrollo de sistemas deben tener en cuenta que el éxito del proyecto eslo más importante y que su éxito individual es secundario. El líder del proyecto tiene sólo un poco de influenciawww.xlibros.com
CAPÍTULO 6 • MODELADO ÁGIL Y PROTOTIPOS 175Necesidad u oportunidad Aplicar métodos de acceso directo para agilizar el proceso de pago.HistoriaMuy por debajoCodificaciónActividadesPruebaEscuchaDiseñoTiempoRecursosCostoCalidadAlcanceDebajo del promedio Promedio Arriba del promedio Muy por arribaSi se conoce la identidad del cliente y la dirección de entrega coincide, agilizar la transacción alaceptar la tarjeta de crédito en el archivo y el resto de las preferencias del cliente, como el métodode envío.FIGURA 6.8Las historias de los usuarios se pueden registrar en tarjetas. La historia de usuario debe ser lo bastantebreve como para que un analista pueda determinar las características de sistemas que se necesitansobre los detalles. Por eso el juego táctico se deja a los miembros del equipo, como si estuvieran en el campo dejuego. El equipo de sistemas trabaja dentro de un estricto periodo (30 días para el desarrollo), de igual forma queun equipo de rugby juega dentro de un tiempo estrictamente limitado.Podemos describir los componentes de la metodología de scrum así:1. Acumulación (backlog) de productos, en donde se deriva una lista a partir de las especificaciones de losproductos.2. Acumulación de corrida (sprint), una lista que cambia en forma dinámica sobre las tareas que se van acompletar en la siguiente corrida.3. Corrida, un periodo de 30 días en donde el equipo de desarrollo transforma la acumulación en software quese puede demostrar.4. Scrum diaria, una reunión breve en donde la comunicación es la regla número uno. Los miembros del equiponecesitan explicar lo que hicieron desde la última reunión, si se toparon con obstáculos y lo que planeanhacer antes de la siguiente scrum diaria.5. Demo, software funcional que se puede demostrar al cliente.Sin duda, scrum es una metodología de alta intensidad, y es sólo una de las filosofías que el modelado ágiladopta.Lecciones aprendidas a partir del modelado ágilLa metodología ágil, que con frecuencia se plantea como una manera alternativa de desarrollar sistemas, buscaresolver las quejas comunes surgidas al usar la metodología SDLC tradicional (debido a que requiere de muchotiempo, se enfoca en los datos en vez de los humanos y es demasiado costosa) al ser rápida, iterativa, flexible yparticipativa al momento de responder a los requerimientos humanos de información, las condiciones y los entor-nos de negocios, que están en constante evolución.Existen crónicas de varios proyectos de desarrollo ágil en libros, artículos y sitios Web. Muchos de ellosfueron exitosos y algunos fracasaron, pero podemos aprender bastante al estudiarlos, al igual que los valores, losprincipios y las prácticas básicas de la metodología ágil. A continuación le mostraremos las seis lecciones impor-tantes que aprendimos al examinar el modelado ágil. La figura 6.9 ilustra estas seis lecciones.La primera lección es que las entregas pequeñas permiten a los sistemas evolucionar. Las actualizacionesde los productos se realizan con frecuencia y los cambios se incorporan con rapidez. De esta forma, el sistemapuede crecer y expandirse en formas útiles para el cliente. Por medio de las entregas pequeñas, el equipo de de-sarrollo comprime el tiempo entre las entregas de su producto, con lo cual puede mejorar el producto después, amedida que la situación dinámica lo exija.La segunda lección es que la programación en pareja mejora la calidad en general. Aunque este tipo de progra-mación es controversial, en definitiva promueve otras actividades positivas necesarias en el desarrollo de sistemas:www.xlibros.com
176 PARTE II • ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNLos recursos y lasactividades equilibradasapoyan los objetivosdel proyectoLos clientes en elsitio son benéficos paraambas partesLecciones que seobtienen al adoptarlos métodos ágilesLos valores ágilesson imprescindiblespara el éxitoLa programación enparejas mejora lacalidad en generalLas entregaspequeñas permiten alos sistemasevolucionarLa semana de trabajode 40 horas mejorala efectividadFIGURA 6.9Hay seis lecciones vitales que sepueden aprender de la metodologíaágil para los sistemas.una buena comunicación, lograr identificarse con el cliente, enfocarse en los aspectos más valiosos del proyectoprimero, evaluar todo el código a medida que se desarrolla e integrar el nuevo código una vez que pase las pruebascon éxito.La tercera lección es que los clientes en el sitio son benéficos tanto para la empresa como para el equipo dedesarrollo ágil. Los clientes actúan como una referencia preparada y una comprobación de la realidad; ademássiempre se mantiene el enfoque del diseño del sistema a través de su presencia: los clientes se hacen más pareci-dos a los desarrolladores y éstos se identifican mejor con los clientes.La cuarta lección es que la semana de trabajo de 40 horas mejora la efectividad. Incluso los desarrolladoresmás resistentes son susceptibles a errores y agotamiento si trabajan demasiado por un periodo muy extenso. Sinembargo, cuando el equipo de desarrollo está unido, cada momento cuenta. Es mucho más conveniente trabajar aun ritmo sostenible durante la vida del proyecto, la vida del sistema y ¡la vida del trabajador! Todos conocemosla parábola de la liebre y la tortuga.La quinta lección que obtenemos de la metodología ágil es que los recursos y las actividades equilibradasapoyan los objetivos del proyecto. Administrar un proyecto no significa sólo reunir todos los recursos y tareas.También significa que el analista tiene que lidiar con varias concesiones. Algunas veces el costo puede estarpredeterminado, mientras que otras veces el tiempo puede llegar a ser el factor más importante. Las variables decontrol de recursos de tiempo, costo, calidad y alcance necesitan estar balanceadas en forma apropiada con lasactividades de codificación, diseño, prueba y escucha.La última lección que obtenemos de las metodologías de modelado ágil es que los valores ágiles son impres-cindibles para el éxito. Es esencial para el éxito en general del proyecto que los analistas adopten sin reservaslos valores de comunicación, simpleza, retroalimentación y valentía en todo el trabajo que realicen. Este tipo decompromiso personal y con el equipo permite al analista triunfar en donde fracasarán otros que posean compe-tencias técnicas similares pero carezcan de los valores. La verdadera dedicación a estos valores es fundamentalpara un desarrollo exitoso.COMPARACIÓN ENTRE EL MODELADO ÁGIL Y LOS MÉTODOSESTRUCTURADOSComo hemos visto, los métodos ágiles se desarrollan con rapidez, ciertamente funcionan y los usuarios sonclientes que están involucrados de manera directa. Aunque es cierto que los proyectos desarrollados por mediode métodos ágiles a menudo requieren de un ajuste para que funcionen de manera apropiada, los desarrolladoreságiles admiten que esto es parte del proceso. La metodología ágil implica muchas entregas pequeñas, y duranteel proceso se van agregando más características.www.xlibros.com
CAPÍTULO 6 • MODELADO ÁGIL Y PROTOTIPOS 177Mejorar la eficiencia en el trabajo del conocimiento: comparación entre SDLC y el método ágilLos investigadores (Davis y Naumann, 1999) desarrollaron una lista de siete estrategias que pueden mejorar laeficiencia del trabajo del conocimiento: reducir el tiempo y los errores de la interfaz; reducir el tiempo de apren-dizaje del proceso y las pérdidas duales de procesamiento; reducir el tiempo y esfuerzo requeridos para estruc-turar tareas y aplicar formato a las salidas; reducir la expansión improductiva del trabajo; reducir la búsqueda dedatos y de conocimiento, junto con el tiempo de almacenamiento y los costos; reducir la comunicación, el tiempode coordinación y los costos; y reducir las pérdidas debido a la sobrecarga humana de información. Ellos creenque esto es importante, ya que con base en el estudio que hicieron de un grupo de programadores, afirman quelos mejores programadores son de cinco a diez veces más productivos que los peores. Además señalan que estaproporción es sólo de dos a uno para los trabajadores que desempeñan labores de oficina o físicas. Su sugerenciaes que el software puede ayudar a mejorar muchas situaciones.Utilizamos la metodología estándar y tradicional de desarrollo de sistemas de los métodos estructurados paracomparar y contrastar la forma en que las metodologías estructuradas y las metodologías ágiles implementaríanlas siete estrategias propuestas para mejorar la eficiencia de los trabajadores del conocimiento.Aunque el hecho de adoptar más software puede en definitiva mejorar también el rendimiento, es razonablesugerir que si cambiamos una metodología también podría mejorar el rendimiento. En consecuencia examinare-mos minuciosamente cada aspecto de la productividad del trabajo del conocimiento, tanto de las metodologíasestructuradas como de las ágiles. La figura 6.10 muestra una lista de las siete estrategias originales para mejorarla productividad y después explica qué métodos se utilizan para mejorar la eficiencia del desarrollo de sistemas,tanto para las metodologías ágiles como para las estructuradas.En las siguientes secciones compararemos y contrastaremos las metodologías estructuradas con la meto-dología ágil. Una observación primordial sobre la metodología ágil es que es una metodología orientada a loshumanos que permite a las personas crear soluciones matizadas que son imposibles de crear por medio de espe-cificaciones formales de proceso.REDUCCIÓN DE LOS TIEMPOS Y ERRORES DE LA INTERFAZ Los analistas de sistemas y los programadoresnecesitan analizar, diseñar y desarrollar sistemas mediante el uso de herramientas de trabajo que varían desdeMicrosoft office hasta herramientas CASE, que son costosas y sofisticadas. También necesitan realizar ladocumentación a medida que desarrollan sistemas. Es importante que los analistas y los programadores seancapaces de comprender la interfaz que utilizan. Necesitan saber cómo clasificar, codificar, almacenar y escribirsobre los datos que recopilan. Los desarrolladores de sistemas también necesitan acceder con rapidez a unprograma, escribir la información requerida y recuperarla cuando la necesiten de nuevo.Estrategias para mejorar la Eficienciaen el trabajo del conocimientoImplementación medianteMetodologías estructuradasImplementación medianteMetodologías ágilesReducir el tiempo y los errores dela interfazAdoptar estándares organizacionales paracodificar, asignar nombres, etc.; usar formulariosAdoptar la programaciónen parejaReducir el tiempo de aprendizaje delproceso y las pérdidas duales deprocesamientoAdministrar las entregas de las actualizaciones,para que el usuario no tenga que aprender yusar el software al mismo tiempoCreación de prototiposad hoc y desarrollorápidoReducir el tiempo y esfuerzo requeridospara estructurar las tareas y aplicarformato a las salidasUsar herramientas y diagramas CASE; usarcódigo escrito por otros programadoresFomentar las entregaspequeñasReducir la expansión improductivadel trabajoAdministración del proyecto; establecertiempos de entregaLimitar el alcance encada entregaReducir el tiempo y costos delalmacenamiento, la investigación dedatos y del conocimientoUsar técnicas estructuradas de recopilaciónde datos, como las entrevistas, laobservación y el muestreoPermitir un cliente enel sitioReducir el tiempo y costos dela comunicación y la coordinaciónSeparar los proyectos en tareas máspequeñas; establecer barrerasReducir las pérdidas debido a lasobrecarga humana de informaciónAplicar técnicas de filtrado para protegera los analistas y programadoresUsar cajas de tiempo(timeboxing)Apegarse a una semanade trabajo de 40 horasFIGURA 6.10Cómo se pueden implementar las estrategias de Davis y Naumann para mejorar laeficiencia mediante el uso de dos metodologías de desarrollo distintas.www.xlibros.com
178 PARTE II • ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNLas metodologías estructuradas fomentan la adopción de estándares para todo. Las reglas establecidas in-cluyen elementos como. “Todos deben usar Microsoft Word en vez de Word Perfect”. Puede haber instruccionesmás detalladas para asegurar datos limpios tales como: “Use siempre M para Masculino y F para Femenino”, conlo cual se asegura que los analistas no seleccionen sus propios códigos sin estandarizar, como 0 para Masculinoy 1 para Femenino. Así, estas reglas se convierten en parte del repositorio de datos. Los formularios tambiénson útiles, pues requieren que todo el personal documente sus procedimientos de manera que otro programadorpueda hacerse cargo si es necesario.En una metodología ágil, los formularios y procedimientos funcionan bien también, pero se añade otro ele-mento. La práctica adicional de la programación en pareja asegura que un programador verificará el trabajo delotro, con lo cual se reduce el número de errores. Programar en pareja significa que se comparte la autoría del diseñoo del mismo software como una sociedad. Ambos socios (en donde por lo general uno de ellos es programador, amenudo experimentado) dirán que eligieron un socio de programación que deseara tener un producto de calidadlibre de errores. Como trabajan dos personas en el mismo diseño y código, el tiempo de la interfaz no representaun problema; es una parte integral del proceso. Los autores han observado que los programadores son bastanteemotivos cuando se menciona el tema de la programación en pareja.REDUCIR EL TIEMPO DE APRENDIZAJE DEL PROCESO Y LAS PÉRDIDAS DUALES DE PROCESAMIENTO Los analistasy los programadores aprenden técnicas específicas y lenguajes de software requeridos para completar unproyecto actual. A menudo se producen ineficiencias cuando algunos analistas y programadores ya conocen losproductos que se van a utilizar, mientras que otros aún necesitan aprender a usarlos. Por lo general pedimos quelos desarrolladores aprendan a usar estos productos al mismo tiempo que los utilizan para construir el sistema.Esta capacitación en el trabajo ralentiza de manera considerable el proyecto de desarrollo de sistemas en sutotalidad.Un proyecto tradicional y estructurado requiere más aprendizaje. Si se utilizaran herramientas CASE, unanalista tendría que aprender a usar las herramientas CASE propietarias que se utilizan en la organización. Lomismo se aplica al uso de un lenguaje de computadora específico. La documentación también es una cuestiónimportante.Mediante el uso de una filosofía ágil, la habilidad de lanzar proyectos sin usar herramientas CASE y docu-mentación detallada permite a los analistas y programadores invertir la mayor parte de su tiempo en el desarrollodel sistema, en vez aprender a usar herramientas específicas.REDUCCIÓN DEL TIEMPO Y ESFUERZO REQUERIDOS PARA ESTRUCTURAR TAREAS Y APLICAR FORMATO A LASSALIDAS Cada vez que un proyecto se inicia, los desarrolladores necesitan determinar los límites. En otraspalabras, necesitan saber cuál será el producto entregable y cómo organizarán el proyecto de manera que puedancompletar todas las tareas necesarias.Una metodología tradicional incluiría el uso de herramientas CASE, dibujar diagramas (como los diagramasE-R y los de flujo de datos), usar software de administración de proyectos (como Microsoft Project), descripcio-nes de trabajo muy detalladas, usar y reutilizar formularios y plantillas, y reutilizar el código escrito por otrosprogramadores.El desarrollo de sistemas mediante una metodología ágil hace frente a la necesidad de estructurar tareas me-diante la programación de entregas pequeñas. La filosofía ágil sugiere que los desarrolladores de sistemas debencrear una serie de tiempos de entrega para muchas versiones del sistema. Las primeras entregas poseerán menoscaracterísticas pero, en cada nueva entrega se agregarán características adicionales.REDUCCIÓN DE LA EXPANSIÓN IMPRODUCTIVA DEL TRABAJO La ley de Parkinson establece que “el trabajo seexpande para poder llenar el tiempo disponible para completarlo”. Si no hay tiempos de entrega específicos, esposible que el trabajo del conocimiento continúe su expansión.Con las metodologías estructuradas tradicionales, al principio los tiempos de entrega parecen estar muyalejados hacia el futuro. Los analistas pueden utilizar técnicas de administración de proyectos para tratar de pro-gramar las actividades, pero hay una predisposición integrada en cuanto a extender las primeras tareas más de lonecesario y después tratar de acortarlas en una etapa posterior del desarrollo. Los analistas y los programadoresse preocupan menos por los tiempos de entrega distantes que por los que ya están próximos.Una vez más, la metodología ágil hace énfasis en las entregas pequeñas. Se pueden entregar versiones enel tiempo prometido, tal vez con menos de las características que se prometieron en un principio. Al considerartodos los tiempos de entrega inminentes se destaca una expectativa realista en cuanto a la terminación (cuandomenos parcial) del proyecto.REDUCCIÓN DEL TIEMPO Y COSTOS DE ALMACENAMIENTO Y DE LA INVESTIGACIÓN DE LOS DATOS Y DELCONOCIMIENTO Los desarrolladores de sistemas necesitan recopilar información sobre la organización, losobjetivos, las prioridades y los detalles acerca de los sistemas de información actuales antes de proceder con eldesarrollo de un nuevo sistema. Los métodos de recopilación de datos incluyen las entrevistas, la administración decuestionarios, la observación y la investigación mediante el análisis de los informes y memos.www.xlibros.com
CAPÍTULO 6 • MODELADO ÁGIL Y PROTOTIPOS 179Las metodologías estructuradas fomentan los métodos estructurados de recopilación de datos. Por lo gene-ral se utilizan técnicas estructuradas para estructurar las entrevistas y diseñar el proceso de las mismas. Hay quedesarrollar los cuestionarios de una manera estructurada; además las técnicas observacionales estructuradas talescomo STROBE podrán animar al analista a observar de manera específica los elementos clave para formar con-clusiones con base en las observaciones del entorno físico. Se determinaría un plan de muestreo en forma cuanti-tativa, para que el analista de sistemas pudiera seleccionar los informes y memos que va a examinar.Las búsquedas de conocimiento son menos estructuradas en el entorno del modelado ágil. La práctica detener un cliente en el sitio mejora en forma considerable el acceso a la información. El cliente en el sitio estápresente para responder preguntas sobre la misma organización, sus objetivos, las prioridades de sus miembrosy cualquier conocimiento necesario sobre los sistemas de información existentes. A medida que el proyectoavanza, se hace más clara la imagen de los requerimientos del cliente. Esta metodología parece estar libre deerrores ya que, cuando los desarrolladores de sistemas desean saber algo, simplemente tienen que preguntar. Sinembargo, la desventaja es que el representante en el sitio tal vez invente información si no la conoce o si no estáa su disposición, o tal vez evite decir la verdad por algún otro motivo oculto.REDUCCIÓN DE LOS TIEMPOS Y COSTOS DE LA COMUNICACIÓN Y LA COORDINACIÓN La comunicación entreanalistas y usuarios, así como entre los mismos analistas, es la base del desarrollo de sistemas. Sin duda unamala comunicación es la raíz de múltiples problemas de desarrollo. Sabemos que la comunicación aumentacuando se unen más personas al proyecto. Cuando dos personas trabajan en un proyecto, existe la oportunidad deentablar una conversación cara a cara; cuando hay tres involucradas, hay tres posibilidades; cuando hay cuatro,hay seis posibilidades y así sucesivamente. Los miembros inexpertos del equipo necesitan tiempo para ponerse alcorriente y pueden ralentizar un proyecto incluso aunque traten de ayudar a agilizarlo.El desarrollo estructurado tradicional fomenta la separación de tareas extensas en tareas más pequeñas. Estopermite que haya grupos más unidos y reduce el tiempo que se invierte en la comunicación. Otra metodología im-plica establecer barreras. Por ejemplo, tal vez los clientes no tengan acceso a los programadores. Ésta es una prác-tica común en muchas industrias. Sin embargo, un aumento en la eficiencia a menudo implica una reducción en laeficacia, y se ha descubierto que al dividir grupos y establecer barreras se introducen errores con frecuencia.Por otra parte, los métodos ágiles limitan el tiempo en vez de las tareas. En las metodologías ágiles se utilizael concepto de cajas de tiempo (timeboxing) para fomentar la terminación de actividades en periodos más cortos.Usar una caja de tiempo es simplemente establecer un límite de tiempo de una o dos semanas para completar unacaracterística o módulo. Scrum, del método ágil, impone una prima sobre el tiempo, mientras que los desarrolla-dores se comunican de manera efectiva como equipo. Como la comunicación es uno de los cuatro valores de lafilosofía ágil, los costos de comunicación tienden a aumentar en vez de disminuir.REDUCCIÓN DE LAS PÉRDIDAS DEBIDO A LA SOBRECARGA HUMANA DE INFORMACIÓN Desde hace tiemposabemos que las personas no reaccionan bien en situaciones de sobrecarga de información. Cuando los teléfonoseran una tecnología emergente, los operadores de los conmutadores conectaban en forma manual las llamadasentre dos partes. Se llegó a demostrar que este sistema funcionaría hasta que ocurriera una sobrecarga deinformación, punto en el cual todo el sistema fallaba. Cuando llegaban demasiadas llamadas, el abrumadooperador del conmutador simplemente dejaba de trabajar y se rehusaba a realizar las conexiones. Una situaciónde sobrecarga parecida le puede ocurrir a cualquier persona en cualquier momento, incluyendo a los analistas desistemas y a los programadores.Una metodología tradicional sería tratar de filtrar información para proteger a los analistas y programadoresde las quejas de los clientes. Esta metodología permite a los desarrolladores seguir trabajando en el problema sinla interferencia y subjetividad que existirían en una situación normal.Mediante el uso de una filosofía ágil, los analistas y programadores se deben apegar a una semana de trabajode 40 horas. Algunos podrían ver esto como una práctica cuestionable. ¿Podrán terminar alguna vez con todo eltrabajo? No obstante, la filosofía ágil establece que el trabajo de calidad se realiza por lo general durante un ho-rario de rutina, y es sólo al momento de agregar tiempo extra cuando entran a la escena los problemas de diseñoy programación de mala calidad. Al apegarse a un programa de una semana de trabajo de 40 horas, la metodolo-gía ágil afirma que en un momento dado usted saldrá adelante.Riesgos inherentes a la innovación organizacionalAl consultar con los usuarios, los analistas deben considerar los riesgos a los que se enfrentan las organizacionesal adoptar nuevas metodologías. Sin duda esto está relacionado con el momento apropiado para actualizar lashabilidades humanas, adoptar nuevos procesos organizacionales e instituir el cambio interno.En un sentido más amplio, éstas son preguntas de dimensión estratégica para el liderazgo organizacional.Consideremos de manera específica el caso del equipo de análisis de sistemas que adopta los métodos ágiles envirtud de los riesgos para la organización y el resultado exitoso eventual para el equipo de desarrollo de sistemasy sus clientes. En la figura 6.11 se muestran muchas de las variables que debemos considerar al evaluar el riesgode adoptar una innovación organizacional.www.xlibros.com
180 PARTE II • ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNMedición delimpacto CostoRiesgosinherentes a lainnovaciónorganizacionalDerechosindividuales SincronizaciónCultura dela organizaciónReacciones delos clientesFIGURA 6.11Para adoptar nuevos sistemas deinformación hay que buscar elequilibrio entre varios riesgos.CULTURA DE LA ORGANIZACIÓN Una consideración clave es la cultura en general de la organización y cómoencaja en ella la cultura del equipo de desarrollo. Una cultura organizacional conservadora con muchascaracterísticas estables que no busque innovar puede ser un contexto inapropiado, e incluso inhóspito, paraque el grupo de desarrollo de sistemas adopte las metodologías ágiles. Los analistas y otros desarrolladoresdeben tener cuidado al introducir nuevas técnicas en este tipo de entorno, ya que su éxito dista mucho de estarasegurado; además los miembros de mucho tiempo del equipo de desarrollo u otros miembros de la organizaciónpueden sentirse amenazados por las nuevas formas de trabajar que difieren de las metodologías acostumbradas yconfiables, que han producido resultados comprobados.En contraste, una organización que depende de la innovación para retener su ventaja competitiva en su in-dustria podría ser la que esté en mejor condición de aceptar las innovaciones ágiles en los métodos de desarrollode sistemas. En este caso, la cultura de la organización ya está impregnada con el entendimiento de la naturalezacrítica de muchos de los principios básicos de las metodologías de desarrollo ágil. Desde del nivel estratégicohacia abajo, los miembros de la empresa han interiorizado la necesidad de tener una retroalimentación rápida,respuestas dinámicas a los entornos cambiantes en tiempo real, depender del cliente para que actúe como guía yparticipe en la solución de problemas, etcétera.Entre estos dos extremos se encuentran las organizaciones que no dependen de la innovación como fortalezaestratégica clave (en otras palabras, no dependen de la investigación y desarrollo de nuevos productos o serviciospara seguir a flote) pero que tal vez les convendría la adopción de prácticas innovadoras en pequeñas unidades ogrupos. Es evidente que esos pequeños centros o núcleos innovadores podrían en un momento dado impulsar elcrecimiento o la ventaja competitiva de este tipo de organización.SINCRONIZACIÓN Las organizaciones deben hacer y responder la pregunta acerca de cuándo es el mejor momentopara innovar con la adopción de nuevas metodologías de desarrollo de sistemas, cuando se tienen en cuenta todoslos proyectos y factores (internos y externos). Las organizaciones deben tener en cuenta toda la variedad deproyectos en los que están invirtiendo, mirar más allá de los tiempos de entrega de los proyectos, programar laactualización de las plantas físicas y absorber las proyecciones clave en la industria y la economía.COSTO Otro de los riesgos en cuanto a la adopción de metodologías ágiles para las organizaciones es el costoinvolucrado en la educación y capacitación de los analistas de sistemas y programadores en relación con lanueva metodología. Esto puede implicar costos de seminarios y cursos fuera del sitio de trabajo, o tal vez hayaque contratar consultores para que trabajen con el personal actual en el sitio. Además hay costos de oportunidadinvolucrados cuando los desarrolladores de sistemas se tienen que desviar por necesidad (aunque en formatemporal) de los proyectos existentes para aprender nuevas habilidades. La educación en sí puede ser costosa,pero hay que reconocer además la carga adicional que se genera cuando los analistas no pueden obtener ingresosdurante su periodo de capacitación.REACCIONES DE LOS CLIENTES Cuando los clientes (ya sean internos o externos) se involucran como usuarios oiniciadores de los esfuerzos de desarrollo de sistemas de información, las reacciones en cuanto al uso de nuevoswww.xlibros.com
CAPÍTULO 6 • MODELADO ÁGIL Y PROTOTIPOS 181métodos requeridos por la metodología ágil también son una consideración clave. Algunos clientes reaccionan demanera alegre una vez que se les describen los beneficios de la conveniencia en tiempo y la participación. Otrosno quieren que los utilicen para los “experimentos” de sistemas con resultados inciertos. La relación entre clientey analista debe ser lo bastante elástica como para absorber y adaptarse a los cambios en los comportamientosesperados. Por ejemplo, la presencia de un cliente en el sitio durante el desarrollo es un compromiso importante,por lo que las personas que piensen adoptar metodologías ágiles deben comprenderlo con claridad y estarcompletamente de acuerdo.MEDICIÓN DEL IMPACTO Otra consideración para las organizaciones que adoptan metodologías ágiles es cómocertificar y medir que los nuevos métodos van a facilitar el desarrollo exitoso de sistemas. Las fortalezas ydebilidades de los métodos estructurados tradicionales que se utilizan para desarrollar sistemas de informaciónson muy conocidas.Aunque hay mucha evidencia anecdótica para establecer que las metodologías ágiles son superiores para eldesarrollo bajo ciertas condiciones, su historial es corto y aún no se cuenta con soporte empírico. Por lo tanto, laadopción de metodologías ágiles conlleva el riesgo de que los sistemas creados con este tipo de metodologías nosean exitosos, o que no se puedan interconectar en forma adecuada con los sistemas heredados. Ha empezado elproceso de medir el impacto en cuanto al uso de las metodologías ágiles, pero las organizaciones necesitan estaralertas al proponer las mediciones del impacto junto con la adopción de nuevos métodos.LOS DERECHOS INDIVIDUALES DE LOS PROGRAMADORES/ANALISTAS Los desarrolladores (analistas y programa-dores) de sistemas exitosos ejercen creatividad en cuanto a la forma de llevar a cabo su trabajo, por lo cualmerecen el derecho de trabajar en la configuración más fructífera posible. Es posible que los requerimientos detrabajo de los nuevos métodos ágiles (por ejemplo, la programación en pareja) vayan en detrimento de ciertosderechos básicos de las personas creativas de trabajar por su cuenta o en grupos, según lo que dicte el trabajode diseño. No hay una “mejor manera” de diseñar un sistema, módulo, interfaz, formulario o página Web. En elcaso de los desarrolladores de sistemas, hay que comparar la creatividad, la subjetividad y el derecho de lograrlos objetivos de diseño por medio de numerosas rutas individuales con las metodologías innovadoras que adoptala organización, como las metodologías ágiles.Como podemos ver, la adopción de innovaciones organizacionales es un proceso que impone muchos ries-gos tanto para la organización como para los individuos. Aquí examinamos los riesgos para la organización engeneral, así como los riesgos que corre el analista de sistemas individual que se ve atrapado en el deseo de laorganización de innovar.La creación de prototipos es una técnica de recopilación deinformación útil para complementar el SDLC tradicional; tantolos métodos ágiles como la interacción humano-computadoracomparten sus raíces en los prototipos. Cuando los analistas desistemas utilizan prototipos buscan reacciones de los usuarios,sugerencias, innovaciones y planes de revisión para realizarmejoras al prototipo y por ende modificar los planes del sistemacon un mínimo de costo y de interrupciones. Los cuatro linea-mientos principales para desarrollar un prototipo son: 1) trabajaren módulos administrables, 2) crear el prototipo con rapidez,3) modificar el prototipo y 4) hacer énfasis en la interfaz de usuario.Aunque no siempre es necesario o conveniente usar prototi-pos, hay que tener en cuenta que existen tres ventajas principalesinterrelacionadas en cuanto a su uso: 1) el potencial de cambiarel sistema durante las primeras etapas de su desarrollo, 2) laoportunidad de detener el desarrollo en un sistema que no estáfuncionando y 3) la posibilidad de desarrollar un sistema quese acerque más a las necesidades y expectativas de los usuarios.Éstos tienen que desempeñar un papel definido en el proceso decreación de prototipos, por lo que los analistas de sistemas debentrabajar en forma sistemática para obtener y evaluar las reaccio-nes de los usuarios en relación con el prototipo.Un uso específico de los prototipos es el desarrollo rápido deaplicaciones (RAD). Ésta es una metodología orientada a obje-tos con tres fases: planeación de requerimientos, taller de diseñoRAD e implementación.El modelado ágil es una metodología de desarrollo de soft-ware que define un plan general con rapidez, desarrolla y entregael software rápidamente y después revisa el software en formacontinua para agregar características adicionales. Los valoresde la metodología ágil que comparten tanto el cliente como elequipo de desarrollo son comunicación, simpleza, retroalimenta-ción y valentía. Las actividades ágiles son codificación, prueba,escucha y diseño. Los recursos disponibles son tiempo, costo,calidad y alcance.Las prácticas ágiles diferencian a los métodos ágiles, in-cluyendo un tipo de método ágil conocido como programaciónextrema (XP), de los otros procesos de desarrollo de sistemas.Las cuatro prácticas básicas de la metodología ágil son 1) entre-gas pequeñas, 2) semana de trabajo de 40 horas, 3) cliente en elsitio y 4) programación en pareja. El proceso de desarrollo ágilincluye elegir una tarea que esté directamente relacionada conuna de las características deseadas del cliente con base en las his-torias de usuarios, elegir un socio de programación, seleccionar yescribir los casos de prueba apropiados, escribir el código, ejecu-tar los casos de prueba, depurar el código hasta que se ejecutentodos los casos de prueba, implementarlo con el diseño existentee integrarlo a lo que ya existe.RESUMENwww.xlibros.com
182 PARTE II • ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNE X P E R I E N C I A D E H Y P E R C A S E ® 6“ Gracias a Dios que es la época del año en donde todo esnuevo. Me encanta la primavera, es el momento más estimulanteaquí en MRE. Los árboles están tan verdes, con hojas de tantas to-nalidades. Hay tantos proyectos por hacer, también. Tantos clientes.Y además tenemos una nueva empleada, Anna Mae Silver. Algunasveces el empleado más nuevo es el más dispuesto a ayudar. Llámelasi necesita más respuestas”.“Toda esta novedad me recuerda a los prototipos. O más bien, alo que sé sobre ellos. Es algo nuevo y fresco, una manera rápida deaveriguar lo que ocurre”.“Creo que tenemos unos cuantos prototipos que ya iniciamos.Algunas veces nuestro nuevo cliente en el sitio, Tessa Silverstone, seinvolucra en el proceso de ayudar a crear historias de usuarios con baseen las cuales se construyen los prototipos. Pero lo mejor sobre ellos esque pueden cambiar. No conozco a nadie que haya estado realmentesatisfecho con el primer intento de uso de un prototipo. Pero es diver-tido involucrarse con algo que ocurre rápido y que puede cambiar”.Preguntas de HYPERCASE1. Elabore una lista de las historias de usuarios que TessaSilverstone compartió como ejemplos.2. Localice el prototipo actual propuesto para usarlo en uno delos departamentos de MRE. Sugiera unas cuantasmodificaciones que podrían hacer a este prototipo inclusomás sensible en cuanto a las necesidades de la unidad.3. Use un procesador de palabras para construir un prototipo nooperacional de un Sistema de informes de proyectos de launidad de capacitación (Training Unit Project ReportingSystem). Incluya las características expuestas por lashistorias de usuarios que encontró. Sugerencia: Vea laspantallas de ejemplo en los capítulos 11 y 12 para que leayuden en su diseño.FIGURA 6.HC1Una de las diversas pantallas de prototipos que se incluyen en HyperCase.En las últimas secciones de este capítulo comparamoscómo las metodologías SDLC y ágil manejan el proceso demejorar la eficiencia en el trabajo del conocimiento de unamanera distinta. Después vimos varios peligros inherentes paralas organizaciones que adoptan metodologías innovadoras, in-cluyendo una cultura organizacional incompatible, una malasincronización del proyecto, el costo de la capacitación para losanalistas de sistemas, las reacciones desfavorables de los clien-tes en cuanto a las nuevas expectativas de comportamiento, lasdificultades para medir el impacto y la posibilidad de compro-meter los derechos creativos individuales de los programadoresy analistas.www.xlibros.com
CAPÍTULO 6 • MODELADO ÁGIL Y PROTOTIPOS 183PALABRAS CLAVE Y FRASESadoptar el cambioasumir simplezacambio incrementalcliente en el sitiodesarrollo rápido de aplicaciones (RAD)entrega pequeñafase de planeación de requerimientoshacer énfasis en la interfaz de usuariohistorias de usuariosimplementaciónmetodología scrummodelado ágilmodificar el prototipoparticipación del usuario en la creación de prototiposprincipios ágilesprogramación en parejaprogramación extrema (XP)prototipoprototipo de características seleccionadasprototipo de parchesprototipo no operacionalprototipo primero de una serieretroalimentación rápidasemana de trabajo de 40 horastaller de diseño RADtrabajar en módulos administrablesvalores ágilesPREGUNTAS DE REPASO1. ¿Cuáles son los cuatro tipos de información que busca el analista por medio de la creación de prototipos?2. ¿Qué significa el término prototipo de parches?3. Defina un prototipo que sea un modelo a escala no funcional.4. Dé un ejemplo de un prototipo que sea un primer modelo a escala completa.5. Defina lo que significa un prototipo que es un modelo con ciertas características esenciales, pero no todas.6. Haga una lista de las ventajas y desventajas de usar prototipos para sustituir el SDLC tradicional.7. Describa cómo se pueden usar los prototipos para mejorar el SDLC tradicional.8. ¿Cuáles son los criterios para decidir si debemos crear el prototipo de un sistema?9. Haga una lista de los cuatro lineamientos que debe observar el analista al desarrollar un prototipo.10. ¿Cuáles son los dos principales problemas implicados en la creación de prototipos?11. Haga una lista de las tres principales ventajas de usar prototipos.12. ¿Cómo puede un prototipo montado en un sitio Web interactivo facilitar el proceso de creación del mismo? Responda enun párrafo.13. ¿Cuáles son las tres formas en que puede ayudar un usuario en el proceso de creación del prototipo?14. Defina lo que significa RAD.15. ¿Cuáles son las tres fases del RAD?16. ¿Cuáles son los cuatro valores que deben compartir el equipo de desarrollo y los clientes de la empresa al utilizar unametodología ágil?17. ¿Qué son los principios ágiles? Mencione cinco ejemplos.18. ¿Cuáles son las cuatro prácticas básicas de la metodología ágil?19. Mencione las cuatro variables de control de recursos que se utilizan en la metodología ágil.20. Describa los pasos comunes en un episodio de desarrollo ágil.21. ¿Qué es una historia de usuario? ¿Debe ser escrita o hablada? Indique su opción y después defienda su respuesta con unejemplo.22. Haga una lista de las herramientas de software que pueden ayudar al desarrollador a realizar una variedad de pruebas decódigo.23. ¿Qué es la scrum?24. Nombre las siete estrategias para mejorar la eficiencia en el trabajo del conocimiento.25. Identifique seis riesgos al adoptar una innovación organizacional.PROBLEMAS1. Como parte de un proyecto grande de sistemas, el banco Clone Bank de Clone, Colorado, quiere que usted los ayude aestablecer un nuevo formulario de informes mensual para sus clientes de las cuentas de cheques y de ahorros. Elpresidente y vicepresidente están muy de acuerdo con lo que dicen los clientes en la comunidad: piensan que sus clientesdesean un resumen de su cuenta de cheques que se parezca al que ofrecen los otros tres bancos de la ciudad. Sinembargo, no están dispuestos a comprometerse a realizar ese formulario sin un resumen formal de retroalimentación delos clientes que respalde su decisión. La retroalimentación no se utilizará para cambiar el prototipo del formulario deninguna manera. Ellos quieren que usted envíe un prototipo de un formulario a un grupo y que envíe el formularioanterior a otro grupo.a. En un párrafo describa por qué tal vez no valga la pena crear un prototipo del nuevo formulario bajo estascircunstancias.b. En un segundo párrafo describa una situación en la que sería conveniente crear un prototipo de un nuevo formulario.www.xlibros.com
184 PARTE II • ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓN2. C. N. Itall ha sido analista de sistemas para la empresa Tun-L Vision Corporation durante muchos años. Cuando ustedllegó para formar parte del equipo de análisis de sistemas y sugirió la creación de prototipos como parte del SDLC paraun proyecto actual, C.N. dijo: “Seguro, pero no puedes poner atención a lo que dicen los usuarios. No tienen idea de loque quieren. Voy a crear el prototipo, pero no voy a ‘observar’ a los usuarios”.a. Con el mayor tacto posible para no molestar a C. N. Itall, haga una lista de las razones que respaldan la importanciade observar las reacciones de los usuarios, las sugerencias y las innovaciones en el proceso de creación del prototipo.b. En un párrafo describa qué podría ocurrir si se crea el prototipo de una parte de un sistema y no se incorporaretroalimentación de los usuarios al sistema sucesivo.3. “Cada vez que creo que he terminado de capturar los requerimientos de información de los usuarios, ya cambiaron denuevo. Es como tratar de pegarle a un objetivo móvil. Creo que, la mitad del tiempo, ni ellos mismos saben lo quequieren”, exclama Flo Chart, analista de sistemas para 2 Good 2 Be True, una empresa que realiza encuestas sobre el usode los productos para las divisiones de marketing de varias empresas de manufactura.a. En un párrafo explique a Flo Chart cómo le pueden ayudar los prototipos para definir mejor los requerimientos deinformación de los usuarios.b. En un párrafo comente acerca de la observación de Flo: “Creo que, la mitad del tiempo, ni ellos mismos saben loque quieren”. Asegúrese de explicar cómo pueden los prototipos ayudar a que los usuarios comprendan mejor yarticulen sus propios requerimientos de información.c. Sugiera cómo podría un prototipo integrado en un sitio Web interactivo resolver las preocupaciones de Flo acerca decómo capturar los requerimientos de información de los usuarios. Use un párrafo.4. Harold, gerente de distrito para la cadena de varias tiendas de nombre Sprocket’s Gifts, piensa que construir un prototiposólo puede significar una cosa: un modelo a escala no funcional. También cree que este método es demasiado torpe paracrear prototipos de sistemas de información y por lo tanto se rehúsa a usarlo.a. Haga una breve comparación (en dos o tres párrafos) y contraste los otros tres tipos de creación de prototiposposibles, de manera que Harold pueda comprender bien lo que significa la creación de un prototipo.b. Harold tiene la opción de implementar un sistema, probarlo y después instalarlo en otras cinco ubicaciones deSprocket si tiene éxito. Nombre un tipo de prototipo que se ajustaría bien a esta metodología; defienda su elecciónen un párrafo.5. “¡He tenido la idea del siglo!” proclama Bea Kwicke, un nuevo analista de sistemas en el grupo de sistemas que usteddirige. “Saltemos toda esta basura del SDLC y hagamos un prototipo de todo. Nuestros proyectos avanzarán más rápido,ahorraremos tiempo y dinero, y todos los usuarios se sentirán como si les pusiéramos atención en vez de alejarnos pormeses sin hablarles”.a. Haga una lista de las razones que usted (como miembro del mismo equipo que Bea) daría a Bea para persuadirla dedesechar el SDLC y crear un prototipo de cada proyecto.b. Bea está muy decepcionada con lo que usted dijo. Para animarla, use un párrafo para explicar las situaciones queusted considere que se presten para crear un prototipo.6. El siguiente comentario se escuchó en una reunión entre los gerentes y el equipo de análisis de sistemas en la empresade mallas y cercas Fence-Me-In: “Ustedes nos dijeron que el prototipo estaría terminado hace tres semanas. ¡Todavía loestamos esperando!”.a. Comente en un párrafo sobre la importancia de la entrega rápida del prototipo de una parte de un sistema deinformación.b. Haga una lista de los tres elementos del proceso de creación de prototipos que haya que controlar para asegurar unaentrega oportuna del prototipo.c. ¿Cuáles son algunos elementos del proceso de creación de prototipos que sean difíciles de manejar? Haga una lista.7. Prepare una lista de actividades a realizar por un equipo de desarrollo de sistemas para un agente de viajes en línea quequiere establecer un sitio Web para sus clientes. Ahora suponga que se le acaba el tiempo. Describa algunas de susopciones. Describa las concesiones que tendrá qué realizar para poder entregar el sitio Web a tiempo.8. Dada la situación para los chocolates de WilliWonk’s (problema 1 en el capítulo 3), ¿cuáles de las cuatro variables derecursos de modelado ágil se pueden ajustar?9. Examine la colección de historias de usuarios del comerciante en línea que aparece anteriormente en el capítulo. A latienda de medios en línea le gustaría ahora que usted agregara algunas características a su sitio Web. Con base en elformato que se mostró anteriormente en este capítulo en la figura 6.9, escriba una historia de usuario para lascaracterísticas que se enlistan a continuación:a. Incluir anuncios desplegables.b. Ofrecer al cliente la posibilidad de compartir con sus amigos los detalles de sus compras.c. Extender la oferta de comprar otros artículos.10. Vaya al sitio Web de herramientas de Palm en www.palmgear.com. Explore el sitio Web y escriba una docena dehistorias de usuario breves para mejorar el sitio Web.11. Vaya al sitio Web de iTunes y escriba una docena de historias de usuario breves para mejorar el sitio Web.12. Use las historias que escribió para el problema 9; recorra las cinco etapas del proceso de desarrollo ágil y describa lo queocurre en cada una de las etapas.www.xlibros.com
CAPÍTULO 6 • MODELADO ÁGIL Y PROTOTIPOS 185PROYECTOS EN GRUPO1. Divida a su grupo en dos subgrupos más pequeños. Haga que el grupo 1 siga los procesos especificados en este capítulopara crear prototipos. Mediante el uso de una herramienta CASE o un procesador de texto, el grupo 1 debe idear dospantallas para un prototipo no operacional en las que utilice la información recolectada en las entrevistas con losempleados de Maverick Transport que se realizaron en el ejercicio en grupo del capítulo 4. Haga todas las suposicionesnecesarias para crear dos pantallas para los despachadores de camiones. El grupo 2 (que representará a losdespachadores) debe reaccionar a las pantallas del prototipo y proveer retroalimentación sobre los elementos que deseanagregar y los que desean quitar.2. Los miembros del grupo 1 deberían revisar las pantallas del prototipo con base en los comentarios que recibieron de losusuarios. Los del grupo 2 deberán responder con comentarios sobre qué tan bien se resolvieron las cuestiones inicialescon los prototipos refinados.3. Como grupo unido, escriba un párrafo en el que describa sus experiencias con la creación de prototipos para obtener losrequerimientos de información.4. Dentro de su grupo, asigne uno de los roles que desempeñan las personas en el desarrollo ágil. Asegúrese de que unapersona sea un cliente en el sitio y que por lo menos dos personas sean programadores. Asigne otros roles, según le parezcaapropiado. Simule la situación de desarrollo de sistemas que describimos en el problema 7, o haga que la persona queactúe como cliente en el sitio seleccione una empresa de comercio electrónico que le sea familiar. Suponga que el clientedesea agregar cierta funcionalidad a su sitio Web. Monte una escena en la que muestre lo que haría cada persona si estose fuera a manejar con los métodos ágiles. Escriba un párrafo en el que describa las restricciones a las que se enfrentacada persona en cuanto a desempeñar su papel.BIBLIOGRAFÍA SELECCIONADAAlavi, M. “An Assessment of the Prototyping Approach to Information Systems Development”. Communications of the ACM,Vol. 27, Núm. 6, junio 1984, pp. 556-563.Avison, D. y D. N. Wilson. “Controls for Effective Prototyping”. Journal of Management Systems, Vol. 3, Núm. 1, 1991.Beck, K. Extreme Programming Explained: Embrace Change. Boston: Addison-Wesley Publishing Co., 2000.Beck, K y M. Fowler. Planning Extreme Programming. Boston: Addison-Wesley Publishing Co., 2001.Cockburn, A. Agile Software Development. Boston: Addison-Wesley Publishing Co., 2002.Davis, G. B. y J. D. Naumann. “Knowledge Work Productivity”. En Emerging Information Technologies: Improving Decisions,Cooperation, and Infrastructure. Editado por K. E. Kendall, pp. 343-357. Thousand Oaks, CA: Sage, 1999. 42.Davis, G. B. y M. H. Olson. Management Information Systems: Conceptual Foundations, Structure, and Development, 2da.Edición. Nueva York: McGraw-Hill, 1985.Fitzgerald, B. y G. Hartnett. “A Study of the Use of Agile Methods Within Intel”. En Business Agility & IT Diffusion. Editadopor L. Matthiassen, J. Pries-Heje y J. DeGross, pp. 187-202. Proc Conference, Atlanta, mayo 2005. Nueva York: Springer,2005.Ghione, J. “A Web Developer’s Guide to Rapid Application Development Tools and Techniques”. Netscape World, junio de1997.Gremillion, L. L. y P. Pyburn. “Breaking the Systems Development Bottleneck”. Harvard Business Review, marzo-abril 1983,pp. 130-137.Harrison, T. S. “Techniques and Issues in Rapid Prototyping”. Journal of Systems Management. Vol. 36, Núm. 6, junio de 1985,pp. 8-13.Kendall, J. E. y K. E. Kendall. “Agile Methodologies and the Lone Systems Analyst: When Individual Creativity and Organi-zational Goals Collide in the Global IT Environment”. Journal of Individual Employment Rights, Vol. 11, Núm. 4, 2004-2005, pp. 333-347.Kendall, J. E., K. E. Kendall y S. Kong. “Improving Quality Through the Use of Agile Methods in Systems Development: Peopleand Values in the Quest for Quality”. En Measuring Information Systems Delivery Quality. Editado por E. W. Duggan yH. Reichgelt, pp. 201-222. Hershey, PA: Idea Group Publishing, 2006.Liang, D. Rapid Java Application Development Using JBuilder 3. Upper Saddle River, NJ: Prentice Hall, 2000.McBreen, P. Questioning Extreme Programming. Boston: Addison-Wesley Publishing Co., 2003.Naumann, J.D. y A. M. Jenkins. “Prototyping: The New Paradigm for Systems Development”, MIS Quarterly, septiembre 1982,pp. 29-44.www.xlibros.com
186 PARTE II • ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNE P I S O D I O 6CASO DE LA CPUALLEN SCHMIDT, JULIE E. KENDALL Y KENNETH E. KENDALLTiempo de reacción“Necesitamos conocer parte de la salida que necesitan los usuarios”, comenta Anna. “Nos ayudará a reafirmar algunas de nues-tras ideas sobre la información que requieren”.“De acuerdo”, contesta Chip. “También nos ayudará a determinar la entrada necesaria. A partir de ahí podemos diseñar lascorrespondientes pantallas de entrada de datos. Vamos a crear informes y pantallas del prototipo para obtener retroalimentaciónde los usuarios. ¿Por qué no usamos Microsoft Access para crear rápidamente pantallas e informes? Yo estoy bastante familia-rizado con el software. Empecemos por escribir algunas historias ágiles para sintetizar lo que se necesita y después desarrollaralgunos prototipos. También podemos usar los requerimientos de los usuarios y deberíamos crear un prototipo para cada línea‘se comunica con’ que conecta a un actor con un caso de uso”.Anna sonríe y comenta, “Ya escribí las siguientes historias ágiles para el problema del mantenimiento preventivo”. Éstasson:1. No hay forma de saber cuándo realizar mantenimiento preventivo en las computadoras de escritorio.2. Por lo general vamos de sala en sala.3. Al completar una sala, lo anotamos en una lista.Anna empieza por desarrollar el prototipo INFORME DE MANTENIMIENTO PREVENTIVO. Con base en las historiaságiles, se pone a trabajar en la creación del prototipo del informe que, piensa, Mike Crowe necesitará.“Este informe se debe usar para predecir cuando los equipos deben tener un mantenimiento preventivo”, piensa Anna. “Meparece que Mike necesitaría saber cuál equipo necesita el servicio, así como cuándo se debe programar éste. Veamos: ¿quéinformación identificaría claramente al equipo? El número de inventario, la marca y el modelo; imagino que debemos incluirla sala y el campus para poder localizarlo rápidamente. Una fecha de mantenimiento calculada indicaría a Mike cuándo hay quecompletar el trabajo. ¿En qué secuencia debería estar el informe? Tal vez la más útil sería por ubicación”.El prototipo del INFORME DE MANTENIMIENTO PREVENTIVO con el informe completo se muestra en la figuraE6.1. Observe que se utilizan los caracteres Xxxxxxx y fechas genéricas para indicar la posición en la que se deben imprimirlos datos. Se incluyen ubicaciones reales de los campus y las salas, así como números de inventario. Son necesarios para queMicrosoft Access pueda realizar la impresión en grupo.El prototipo del informe se termina pronto. Después de imprimir la copia final, Anna lleva el reporte tanto a Mike Crowecomo a Dot Matricks. Mike Crowe está entusiasmado con el proyecto y desea saber cuándo estará el informe en producción.Dot está impresionada de manera similar.Surgen varios cambios. Mike desea un área para escribir la fecha de terminación del mantenimiento preventivo, para poderusar el informe para reescribir las fechas en la computadora. También sugiere que se cambie el título del informe a INFORMEDE MANTENIMIENTO PREVENTIVO SEMANAL. Los siguientes pasos son modificar el informe del prototipo para reflejarlos cambios recomendados y después hacer que Mike y Dot revisen el resultado.El informe se modifica y se imprime fácilmente. Dot está complacida con el resultado final. “Éste es en realidad un excelentemétodo para diseñar el sistema”, comenta. “Es tan agradable sentir que formamos parte del proceso de desarrollo y que nuestrasopiniones cuentan. Estoy empezando a sentirme confiada de que el sistema final será justo lo que siempre hemos querido”.Mike tiene elogios similares, y comenta: “Esto hará que nuestro trabajo fluya con más uniformidad. Elimina la parte detener que adivinar sobre los equipos a los que hay que dar mantenimiento. Y usar la secuencia de sala en sala es una excelenteidea. No tenemos que invertir tanto tiempo en regresar a las salas para trabajar en los equipos”.Chip hace una observación sobre cada una de estas modificaciones en un Formulario de evaluación del prototipo (como lafigura 6.3 del capítulo). Este formulario ayuda a Chip a organizarse y documenta el proceso de creación del prototipo.Después, Chip y Anna concentran su atención en la creación de prototipos de las pantallas. “Como me gusta el aspecto dehardware del sistema, ¿por qué no empezamos a trabajar en el diseño de la pantalla AGREGAR NUEVA COMPUTADORA?”,pregunta Chip.“Me parece bien”, responde Anna. “Me enfocaré en los aspectos de software”.Chip analiza los resultados de las entrevistas detalladas con Dot y Mike. Compila una lista de elementos que cada usuarionecesitaría a la hora de agregar una computadora. Otros elementos, como la información sobre la ubicación y el mantenimiento,actualizarían el ARCHIVO MAESTRO DE COMPUTADORAS después de instalar el equipo.“No cabe duda de que definir las tablas de la base de datos ayuda a crear prototipos rápidos”, comenta Chip. “No me tardémucho en completar la pantalla. ¿Te gustaría verme probar el prototipo?”.“Seguro”, le responde Anna. “Ésta es mi parte favorita de la creación de prototipos”.Chip ejecuta el diseño de la pantalla mientras Anna, Mike y Dot observan. Las listas desplegables y las casillas de verifi-cación facilitan la introducción de datos precisos.www.xlibros.com
CAPÍTULO 6 • MODELADO ÁGIL Y PROTOTIPOS 187Informe de mantenimiento preventivoSemana del 6/1/106/1/10 Página 1 de 1Ubicacióndel campusUbicaciónde la salaNúmero y marcade inventario Modelo Fecha del últimomantenimientopreventivoRealizadoAdministración central 11111 84004782 Xxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxxxx 4/4/10 ____Administración central 11111 90875039 Xxxxxxxxxxxxxx Xxxxxxxxxxxxxxxx 3/24/10 ____Administración central 11111 93955411 Xxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxxxx 4/4/10 ____Administración central 11111 99381373 Xxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxxxx 3/24/10 ____Administración central 22222 10220129 Xxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxx 3/24/10 ____Administración central 99999 22838234 Xxxxxxxxxxxxxx Xxxxxxxxxxxxxxxx 3/24/10 ____Administración central 99999 24720952 Xxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxx 3/24/10 ____Administración central 99999 33453403 Xxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxx 4/4/10 ____Administración central 99999 34044449 Xxxxxxxxxxxx Xxxxxxxxxxxxxxxxxx 4/4/10 ____Administración central 99999 40030303 Xxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxxxx 4/4/10 ____Administración central 99999 47403948 Xxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxx 3/24/10 ____Administración central 99999 56620548 Xxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxx 4/4/10 ____Ciencias computacionales central 22222 34589349 Xxxxxxxxxxxx Xxxxxxxxxxxxxxxxxx 3/24/10 ____Ciencias computacionales central 22222 38376910 Xxxxxxxxxxxx Xxxxxxxxxxxxxxxxxx 3/24/10 ____Ciencias computacionales central 22222 94842282 Xxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxxxx 3/24/10 ____Ciencias computacionales central 99999 339393 Xxxxxxxxxxxxxx Xxxxxxxxxxxxxxxx 4/4/10 ____Zoología central 22222 11398423 Xxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxxxx 3/24/10 ____Zoología central 22222 28387465 Xxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxxxx 4/4/10 ____Zoología central 99999 70722533 Xxxxxxxxxxxxxx Xxxxxxxxxxxxxxxx 3/24/10 ____Zoología central 99999 99481102 Xxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxxxx 3/24/10 ____FIGURA E6.1Prototipo para el INFORME DEMANTENIMIENTOPREVENTIVO. Hay que revisareste informe.“Esto me gusta mucho”, dice Dot. “¿Puedo tratar de agregar algunos datos?”.“Adelante”, contesta Chip. “Trata de agregar datos tanto válidos como inválidos. Y observa los mensajes de ayuda queaparecen en la parte inferior de la pantalla para indicar lo que se debe introducir. ¿Por qué no pruebas este prototipo por uno odos días y regresas conmigo? Entonces realizaré los cambios que recomiendes y te daré el prototipo modificado para que lorevises”.Anna regresa a su escritorio y crea el diseño de la pantalla AGREGAR REGISTRO DE SOFTWARE.Cuando Anna termina el diseño de la pantalla, pide a Cher que pruebe el prototipo. Cher introduce información, revisa losvalores de las listas desplegables y observa los mensajes de ayuda.“Me gusta mucho el diseño de esta pantalla y su apariencia”, comenta Cher. “Aunque le faltan algunos de los campos quese incluirían por lo general para introducir un paquete de software, como el tipo de computadora en la que se ejecuta el software,la memoria requerida y la velocidad del procesador. También me gustarían unos botones para guardar el registro y salir”.“Puedo hacer todos esos cambios. Una vez que los termine, regresaré contigo”, responde Anna mientras hace algunasanotaciones para sí misma.Poco tiempo después. Cher vuelve a probar la pantalla AGREGAR REGISTRO DE SOFTWARE. Ésta incluye todas lascaracterísticas que requiere. Se puede ver el diseño de la pantalla completa mediante Microsoft Access. Cher observa que hayuna línea que separa la información de software de las entradas de hardware.Unos cuantos días más tarde, Dot visita a Anna con los cambios sugeridos para el prototipo de AGREGAR NUEVA COMPU-TADORA. “Revisé esto con Mike y nos gusta lo que vimos, pero tenemos unas sugerencias”, comenta Dot. “Una de las cosasque faltan es el sistema operativo. Tenemos varias personas técnicas que utilizan varios sistemas operativos. Muchos de losusuarios de los equipos Mac tienen Windows instalado también, y algunos de los usuarios de Windows tienen sistemas tipoLinux instalados. Necesitamos incluir varios sistemas operativos en la pantalla AGREGAR NUEVA COMPUTADORA”.www.xlibros.com
188 PARTE II • ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓN“Vamos a requerir algo de tiempo para actualizar las tablas y los prototipos”, comenta Chip después de una larga pausa.“Pero esta es la razón por la que usamos ciclos cortos para desarrollar, probar y obtener retroalimentación. Modificaré el pro-totipo y me pondré en contacto con ustedes cuando termine”.Después de idear y rediseñar las tablas de la base de datos, el prototipo se modifica y se envía a Mike para su aprobación.Unos cuantos días después. Mike llega con algo de retroalimentación. “¡Se ve excelente!”, exclama Mike. “Sin embargo, me dicuenta de que hay algunos requerimientos adicionales que olvidé decirles. Tenemos un programa de renovación en el que sereemplazan las computadoras después de cierto periodo, que varía según el tipo de equipo y la fecha en que se compró. Cuandocompramos el equipo, estimamos el intervalo de renovación. ¿Podemos agregar el intervalo de renovación a la base de datos yal prototipo? Podríamos usarlo para calcular la fecha de renovación y explorar en forma periódica el Archivo maestro de compu-tadoras para detectar todas las computadoras que necesiten renovación”.Chip empieza a trabajar en las modificaciones. “Este desarrollo ágil es interesante”, dice al tiempo que le sonríe a Anna.“Puedo ver por qué se utiliza para descubrir los requerimientos”.La versión final del prototipo de AGREGAR NUEVA COMPUTADORA que se creó con Access se muestra en la figuraE6.2. En la parte superior de la pantalla se colocaron la fecha y hora actuales, así como un título centrado en la pantalla. Lasleyendas de los campos están alineadas a la izquierda en la pantalla. Se incluyeron casillas de verificación para el campo de la garan-tía, así como una lista desplegable para el tipo de unidad óptica. Se incluyó un subformulario del sistema operativo para selec-cionar varios sistemas operativos en la porción inferior derecha de la pantalla. Se incluyeron los botones “Agregar registro”(Add Record) e “Imprimir”.“Chip, estuve hablando con Dot y mencionó que hay financiamiento para incluir parte de la información en la Web, comoparte del sitio Web para soporte de tecnología en la CPU”, comenta Anna, quitando su vista de la computadora. “He estadoocupada creando un prototipo para los menús de la página Web y la primera pantalla, una para reportar problemas tecnológicos.Como resolver problemas es el área de Mike, lo invité junto con Dot para revisar el prototipo. ¿Quieres unirte a la sesión?”.“Seguro”, responde Chip. “Estoy interesado en trabajar en el diseño de algunas de las páginas Web”.Poco tiempo después, Mike, Dot y Chip están reunidos con Anna mientras ella demuestra la página Web que se ilustra enla figura E6.3.“Me gusta mucho el estilo del menú”, comenta Dot. “El menú principal incluye submenús desplegables en la parte superiorque son fáciles de usar; además me gusta la forma en que se despliegan y cómo cambian de color los elementos del menú almover el ratón sobre ellos”.“Sí, y al tener submenús desplegables debajo del principal para las características de cada opción nos ayuda a encontrar loque estamos buscando”, agrega Mike. “Ahora, tengo algunas sugerencias para la página Web en la que se reportan los problemas.Sería más útil si se moviera el área de selección Categoría del problema (Problem Category) a la parte superior de la página.Cada tipo de problema se asigna a un técnico distinto, uno que sea más o menos experto en esa área. Necesitamos una casillade verificación adicional para identificar si es equipo Macintosh, Windows o software con el que estemos trabajando. El campoNúmero de etiqueta (Tag Number) ayuda también. Muchas personas no saben que cada pieza de equipo tiene una pequeñaetiqueta metálica de identificación con un número único de inventario. Hmmm... esa gran área azul parece resaltar demasiado.Después de todo, es sólo ayuda. Creo que sería mejor reemplazarla con una pequeña imagen”.FIGURA E6.2Prototipo para la pantallaAGREGAR NUEVACOMPUTADORA (Add NewComputer). Se utilizó MicrosoftAccess como la herramienta paracrear el prototipo. Se pueden hacermejoras en esta etapa.www.xlibros.com
CAPÍTULO 6 • MODELADO ÁGIL Y PROTOTIPOS 189FIGURA E6.3Prototipo para la página WebSISTEMA DE REPORTE DEPROBLEMAS. Esta página Webnecesita algunas mejoras.“Creo que será fácil hacer estos cambios”, comenta Anna.“Excelente”, responde Mike. “También sería útil incluir el número telefónico de la línea de soporte técnico en la páginaWeb. Si es una verdadera emergencia, podría agilizar la resolución del problema. Deberíamos agregar un campo de entrada parael número telefónico del usuario también. Desde luego que podríamos buscarlo en la base de datos, pero tal vez la persona quereporte el problema se encuentre en un laboratorio de cómputo o en otra ubicación lejos de su oficina”.“¡Buena idea!” exclama Dot. “Esto va a ser en extremo útil para el cuerpo docente y el personal. Creo que debemos crearprototipos de todas las páginas Web para el sitio. Sé que las páginas Web pueden cambiar de vez en cuando, pero ¡tratemos dehacer lo mejor que podamos desde el principio! ¿Por qué no les das un vistazo y nos dices lo que opinas en unos días?”.Anna mira a Chip y sonríe. “¡Creo que estarás trabajando en el diseño de páginas Web más pronto de lo que pensabas!”.Unos cuantos días más tarde, Mike regresa con retroalimentación adicional sobre el diseño Web. “Esta página Web se vebien”, sonríe Mike, “pero me puso a pensar. Tenemos una imagen de todo el software en cada computadora del laboratorio.Cuando hay un problema, como un virus o una falla en el disco duro, lo corregimos y volvemos a transferir la imagen al equipo.Sin embargo, cada laboratorio tiene distintos requerimientos en cuanto al software que debe tener el equipo. Además pregunta-mos al cuerpo docente si la imagen necesita actualización. Por lo general esto ocurre al final del semestre de primavera y tra-bajamos en ello durante el verano. ¿Puedes crear unos prototipos de páginas Web para que los revisemos? Uno debería teneruna lista de todo el software, incluyendo los navegadores, detección de virus y demás paquetes estándar que se incluyan paracada equipo en una sala específica. La otra página Web se usaría para que el cuerpo docente actualizara la lista de imágenes”.“Vaya, implica mucho trabajo”, responde Anna con una mirada pensativa. “Trabajaremos en ello”.Anna y Chip continúan trabajando en los prototipos; realizan el diseño, obtienen retroalimentación de los usuarios y mo-difican el diseño para incluir los cambios. Ahora que han terminado el trabajo, tienen una firme idea de los requerimientos delsistema.“Este proyecto está creciendo”, comenta Anna mientras mira la gran cantidad de prototipos que han ensamblado. “No creoque podamos desarrollar todo el software en el periodo de tiempo asignado”.“Estoy de acuerdo contigo; pareces tener una buena idea sobre ello”, responde Chip pensativamente. “Sólo tenemos seismeses para desarrollar el proyecto, incluyendo las páginas Web. Hay mucho código de servidor y JavaScript por escribir”.Anna baja una pila de formularios de evaluación de prototipos y mira directamente a Chip. “¿Cuáles son nuestras opcio-nes?”.Chip toma un momento para reflexionar y responde: “Bueno, comprometer la calidad no es una opción y la fecha de entregano se puede modificar. Sólo queda hacer concesiones en cuanto al costo y el alcance”.“El costo está fijo en cierto modo”, responde Anna. “Dot y Paige dijeron a ciencia cierta que hay tantos proyectos de de-sarrollo que tenemos que permanecer dentro de nuestro presupuesto”.“Bueno, eso significa que tendremos que reducir el alcance del proyecto”, dice Chip después de un momento. “Trabajare-mos en los elementos de alta prioridad primero”.“¿Qué hay sobre sacrificar una semana de trabajo de 40 horas?”, exclama Anna.“No es una opción”, sonríe Chip. “Después de todo, ¡es un valor básico!”.www.xlibros.com
190 PARTE II • ANÁLISIS DE LOS REQUERIMIENTOS DE INFORMACIÓNEJERCICIOSElabore una crítica de los prototipos de informes y pantallas para los siguientes ejercicios (E-1 al E-10). Registre los cambiosen una copia del Formulario de evaluación de prototipos Use Microsoft Access para ver los prototipos y después modifique losprototipos de informes y pantallas con los cambios sugeridos. Imprima los prototipos finales.Use los siguientes lineamientos como ayuda en el análisis:1. Alineación de los campos en los informes. ¿Están alineados los campos en forma correcta? ¿Están alineados los encabeza-dos de las columnas de los informes en forma correcta sobre las columnas? Si el informe tiene leyendas a la izquierda delos campos de datos, ¿están alineadas en forma correcta (por lo general a la izquierda)? ¿Están alineados los datos en formacorrecta dentro de cada campo de entrada?2. Contenido del informe. ¿Contiene el informe todos los datos necesarios? ¿Están presentes los totales y subtotales apro-piados y útiles? ¿Hay totales o datos adicionales que no deban estar en el informe? ¿Están impresos las claves o los sig-nificados de éstas en el informe (hay que evitar claves, ya que tal vez no presenten información al usuario en formaclara)?3. Revise la apariencia visual del informe. ¿Se ve agradable? ¿Se imprimen en grupo los campos repetitivos (es decir, losdatos sólo se deben imprimir una vez, al principio del grupo)? ¿Hay suficientes líneas en blanco entre los grupos paraidentificarlos con facilidad?4. Alineación de datos y leyendas en la pantalla. ¿Están alineadas las leyendas en forma correcta en la pantalla? ¿Estánlos datos alineados en forma correcta? ¿Están alineados correctamente los datos dentro de un campo?5. Apariencia visual de la pantalla. ¿Tiene la pantalla una apariencia visual placentera? ¿Hay suficiente espaciamientovertical entre los campos? ¿Hay suficiente espaciamiento horizontal entre las columnas? ¿Están agrupados todos los cam-pos en forma lógica? ¿Están agrupadas las características como los botones y las casillas de verificación?6. ¿Contiene la pantalla todos los elementos funcionales necesarios? Busque botones faltantes que podrían ayudar alusuario a trabajar sin problemas con la pantalla; busque también datos faltantes, datos o campos adicionales innecesariosque se deban sustituir por una casilla de verificación o lista desplegable.E-1. El LISTADO DE INVENTARIO DE HARDWARE muestra todas las computadoras personales, ordenadas por campusy sala.E-2. El INFORME DE INVERSIÓN DE SOFTWARE se utiliza para calcular el monto total invertido en software.E-3. El INFORME DE COMPUTADORAS INSTALADAS muestra la información de los equipos instalados.E-4. El prototipo para el INFORME DE PROBLEMAS DE COMPUTADORAS muestra una lista de todos los equipos orde-nados en base al costo total de las reparaciones e incluye el número de reparaciones (algunos equipos no tienen un costoalto, ya que aún se encuentran bajo garantía). Este prototipo se utiliza para calcular el costo total de las reparaciones paratoda la universidad, así como para identificar los equipos con problemas.E-5. El INFORME DE NUEVO SOFTWARE INSTALADO muestra el número de equipos con cada paquete de software queestán instalados en cada sala de cada campus.E-6. El INFORME DE REFERENCIAS CRUZADAS DE SOFTWARE muestra una lista de todas las ubicaciones para cadaversión de cada paquete de software.E-7. La pantalla ELIMINAR REGISTRO DE COMPUTADORA se utiliza para seleccionar las computadoras que se van aeliminar del sistema. El área de entrada es el campo Número de inventario de hardware (Hardware Inventory Number).Los demás campos sólo son para fines de visualización, para identificar el equipo. A los usuarios les gustaría la habilidadde imprimir cada registro antes de eliminarlo. También quieren desplazarse a los registros anterior y siguiente. Sugeren-cia: examine los campos que se muestran en el informe LISTADO DE INVENTARIO DE HARDWARE.E-8. Una pantalla INFORMACIÓN DE MANTENIMIENTO DE ACTUALIZACIONES permite a Mike Crowe cambiar lainformación de mantenimiento sobre las computadoras personales. Algunas veces éstos son cambios de rutina, comola FECHA DEL ÚLTIMO MANTENIMIENTO PREVENTIVO o el NÚMERO DE REPARACIONES, pero tambiénpueden ocurrir otros cambios en forma esporádica, como la expiración de una garantía. Se introduce el NÚMERO DEINVENTARIO DE HARDWARE y se encuentra el REGISTRO DE COMPUTADORA que coincida. Se muestran laMARCA y el MODELO para fines de retroalimentación. Así el operador puede cambiar los campos GARANTÍA, IN-TERVALO DE MANTENIMIENTO, NÚMERO DE REPARACIONES, FECHA DE ÚLTIMO MANTENIMIENTOPREVENTIVO y COSTO TOTAL DE REPARACIONES. A Mike le gustaría imprimir la información en pantalla, asícomo realizar cualquier cambio con facilidad.E-9. La pantalla PETICIÓN DE UBICACIÓN DE SOFTWARE muestra información sobre las salas y los equipos que contie-nen software seleccionado. Se introducen el TÍTULO, NÚMERO DE VERSIÓN y SISTEMA OPERATIVO. La porciónde salida de la pantalla debe mostrar la UBICACIÓN DEL CAMPUS, UBICACIÓN DE LA SALA, NÚMERO DEINVENTARIO DE HARDWARE, NOMBRE DE MARCA y MODELO. Los botones permiten al usuario avanzar alsiguiente registro, al registro anterior, cerrar y salir de la pantalla.www.xlibros.com
CAPÍTULO 6 • MODELADO ÁGIL Y PROTOTIPOS 191FIGURA E6.4Prototipo para la página WebACTUALIZAR IMAGEN DELABORATORIO. Esta páginaWeb necesita algunas mejoras.E-10. El prototipo de la página Web ACTUALIZAR IMAGEN DE LABORATORIO se muestra en la figuraE6.4. Revise esta página Web y sugiera cambios.Los ejercicios en los que se antepone un icono www indican material de valor agregado disponible en el sitio Web www.pearsonhighered.com/kendall. Los estudiantes pueden descargar una base de datos de muestra de Microsoft Access y de Visible Analyst Project para completar losejercicios.www.xlibros.com
www.xlibros.com
193C A P Í T U L O 7Uso de diagramasde flujo de datosOBJETIVOS DE APRENDIZAJEAl completar este capítulo usted podrá:1. Comprender la importancia del uso de diagramas de flujo de datos (DFD) lógicos y físicos paradescribir gráficamente el movimiento de datos para humanos y sistemas en una organización.2. Crear, usar y expandir los DFD lógicos para capturar y analizar el sistema actual por mediode niveles padre e hijo.3. Desarrollar y expandir DFD lógicos que ilustren el sistema propuesto.4. Producir DFD físicos con base en los DFD lógicos que desarrolle.5. Comprender y aplicar el concepto de particionamiento de DFD físicos.El analista de sistemas requiere la libertad conceptual que los diagramas deflujo ofrecen; éstos caracterizan gráficamente los procesos y flujos de datos enun sistema empresarial. En su estado original, los diagramas de flujo de datosdescriben con la mayor generalidad posible las entradas, los procesos y las sali-das del sistema, las cuales corresponden a las del modelo de sistemas generalque vimos en el capítulo 2. Podemos usar una serie de diagramas de flujo dedatos en capas para representar y analizar con detalle los procedimientos del sistema más amplio.LA METODOLOGÍA DEL FLUJO DE DATOS PARA DETERMINARLOS REQUERIMIENTOS HUMANOSPara que los analistas de sistemas puedan comprender los requerimientos de información de los usua-rios, deben ser capaces de conceptualizar la forma en que los datos se mueven a través de la organiza-ción, los procesos o la transformación por la que pasan los datos y las salidas de los mismos. Aunquelas entrevistas y la investigación de datos “duros” proveen una narrativa verbal del sistema, una des-cripción visual puede cristalizar esta información para los usuarios y analistas de una manera útil.Por medio de una técnica de análisis estructurado conocida como diagramas de flujo de datos(DFD), el analista de sistemas puede ensamblar una representación gráfica de los procesos de datos através de la organización. Al usar combinaciones de sólo cuatro símbolos, el analista puede crear unadescripción ilustrada de los procesos con el fin de elaborar una documentación sólida para el sistema.Ventajas de la metodología del flujo de datosLa metodología del flujo de datos tiene cuatro ventajas importantes en comparación con las expli-caciones narrativas sobre la forma en que se mueven los datos a través del sistema:1. No hay que comprometerse demasiado pronto con la implementación técnica del sistema.2. Permite comprender con más detalle la capacidad de interrelación de los sistemas y subsistemas.3. Se puede comunicar el conocimiento del sistema actual a los usuarios por medio de diagramas deflujo de datos.4. Se puede analizar un sistema propuesto para determinar si se han definido los datos y procesosnecesarios.P A R T E I I IEl proceso de análisiswww.xlibros.com
194 PARTE III • EL PROCESO DE ANÁLISISEntidadSímbolo Significado EjemploProcesoInformaciónnuevo estudianteFlujo de datosAlmacén de datos D3 Archivo maestrode estudiantesEstudiante2.1Crear registrode estudianteFIGURA 7.1Los cuatro símbolos básicos quese utilizan en los diagramas deflujo de datos, sus significados yejemplos.Tal vez la mayor ventaja recaiga en la libertad conceptual que se obtiene al usar los cuatro símbolos (re-conocerá tres de ellos del capítulo 2; la próxima subsección sobre las convenciones de los DFD aborda todos).Ninguno de estos símbolos especifica los aspectos físicos de la implementación. Los DFD se enfocan en elprocesamiento de los datos o en la transformación de los mismos a medida que avanzan a través de variosprocesos. En los DFD lógicos no hay distinción entre los procesos manuales o los automatizados. Tampoco sedescriben en forma gráfica los procesos en orden cronológico, sino que, en última instancia, se agrupan entre sícuando un análisis posterior indique que es conveniente hacerlo. Se agrupan los procesos manuales; también losautomatizados pueden asociarse entre sí. En una sección posterior veremos más detalles sobre este concepto,conocido como particionamiento.Convenciones usadas en los diagramas de flujo de datosSe utilizan cuatro símbolos básicos para graficar el movimiento de los datos en los diagramas: un cuadrado do-ble, una flecha, un rectángulo con esquinas redondas y un rectángulo con un extremo abierto (cerrado del ladoizquierdo y abierto del lado derecho), como se muestra en la figura 7.1. Podemos describir en forma gráfica todoun sistema y numerosos subsistemas al combinar estos cuatro símbolos.El cuadrado doble se utiliza para describir una entidad externa (otro departamento, una empresa, unapersona o una máquina) que pueda enviar/recibir datos hacia/desde el sistema. La entidad externa, o simple-mente entidad, también se conoce como origen o destino de los datos, y se considera externa al sistema quese está describiendo. Cada entidad se identifica con un nombre apropiado. Aunque interactúa con el sistema, seconsidera fuera de los límites de éste. Se debe denominar a las entidades con un sustantivo. Se puede utilizarla misma entidad más de una vez en un diagrama de flujo de datos para evitar cruzar las líneas de flujo dedatos.La flecha muestra el movimiento de los datos de un punto a otro; la cabeza de la flecha apunta hacia el des-tino de los datos. Los flujos de datos que ocurren al mismo tiempo se pueden describir mediante el uso de fle-chas paralelas. Como una flecha representa datos sobre una persona, lugar o cosa, también se debe describir conun sustantivo.Se utiliza un rectángulo con esquinas redondas para mostrar la ocurrencia de un proceso de transformación.Los procesos siempre expresan un cambio o transformación en los datos; por ende, el flujo de datos que sale deun proceso siempre se identifica de manera distinta al flujo que entra al proceso. Los procesos representan elwww.xlibros.com
CAPÍTULO 7 • USO DE DIAGRAMAS DE FLUJO DE DATOS 195trabajo que se realiza en el sistema y se deben denominar mediante el uso de uno de los siguientes formatos. Unnombre claro facilita la acción de entender lo que el proceso lleva a cabo.1. Al denominar un proceso de alto nivel, asigne al proceso el nombre de todo el sistema. Por ejemplo,SISTEMA DE CONTROL DE INVENTARIO.2. Al denominar un subsistema importante, use un nombre tal como SUBSISTEMA DE INFORME DEINVENTARIOS o SISTEMA DE CUMPLIMIENTO CON CLIENTES DE INTERNET.3. Al denominar procesos detallados, use una combinación verbo-sustantivo-adjetivo. El verbo describe el tipode actividad, como CALCULAR, VERIFICAR, PREPARAR, IMPRIMIR o AGREGAR. El sustantivoindica cuál es el resultado principal del proceso, como INFORME o REGISTRO. El adjetivo ilustra lasalida específica que se produce, como PEDIDO PENDIENTE o INVENTARIO. Algunos ejemplos denombres de procesos completos son CALCULAR IMPUESTO DE VENTAS, VERIFICAR ESTADO DECUENTA DE CLIENTE, PREPARAR FACTURA DE ENVÍO, IMPRIMIR INFORME DE PEDIDOSPENDIENTES, ENVIAR CONFIRMACIÓN POR EMAIL AL CLIENTE, VERIFICAR SALDO DETARJETA DE CRÉDITO y AGREGAR REGISTRO DE INVENTARIO.Un proceso también debe recibir un número de identificación único que indique su nivel en el diagrama. Más ade-lante en el capítulo hablaremos sobre esta organización. Puede haber varios flujos de datos que entren y salgan decada proceso. Examine los procesos que tengan sólo un flujo entrante y saliente para determinar si no hacen faltamás flujos de datos.El último símbolo básico que se utiliza en los diagramas de flujo de datos es un rectángulo con un extremoabierto, el cual representa a un almacén de datos. El rectángulo se dibuja con dos líneas paralelas que se cierranmediante una línea corta del lado izquierdo y cuyo extremo derecho está abierto. Estos símbolos se dibujan conla anchura suficiente como para permitir una leyenda de identificación entre las líneas paralelas. En los diagra-mas de flujo de datos lógicos no se especifica el tipo de almacenamiento físico. En este punto, el símbolo delalmacén de datos muestra sólo un depósito de datos que permite examinar, agregar y recuperar los datos.El almacén de datos puede representar un almacén manual como un archivero, o un archivo o una base dedatos computarizada. Como los almacenes de datos representan a una persona, lugar o cosa, se denominan conun sustantivo. Los almacenes de datos temporales, como el papel de borrador o un archivo temporal de computa-dora, no se incluyen en el diagrama de flujo de datos. Hay que dar a cada almacén de datos un número de refe-rencia único, como D1, D2, D3, por ejemplo.CÓMO DESARROLLAR DIAGRAMAS DE FLUJOS DE DATOSPodemos y debemos dibujar los diagramas de flujos de datos en forma sistemática. En la figura 7.2 se sintetizanlos pasos involucrados para completar con éxito los diagramas de flujos de datos. En primer lugar, el analista desistemas necesita conceptualizar los flujos de datos desde una perspectiva de arriba-abajo.Para empezar un diagrama de flujo de datos, contraiga la narrativa (o historia) del sistema de la organizaciónen una lista con las cuatro categorías de entidad externa, flujo de datos, proceso y almacén de datos. A su vez,esta lista ayuda a determinar los límites del sistema que va a describir. Una vez que haya compilado una lista bá-sica de elementos de datos, empiece a dibujar un diagrama de contexto.He aquí unas cuantas reglas básicas a seguir:1. El diagrama de flujo de datos debe tener por lo menos un proceso y no debe haber objetos independientes oconectados a sí mismos.2. Un proceso debe recibir por lo menos un flujo de datos entrante y debe crear por lo menos un flujo de datossaliente.3. Un almacén de datos debe estar conectado con por lo menos un proceso.4. Las entidades externas no se deben conectar entre sí. Aunque se comunican en forma independiente, esacomunicación no forma parte del sistema que diseñamos mediante el uso de DFD.Creación del diagrama de contextoCon una metodología arriba-abajo para crear un diagrama del movimiento de los datos, los diagramas avanzan degenerales a específicos. Aunque el primer diagrama ayuda al analista de sistemas a comprender el movimientode datos básico, su naturaleza general limita su utilidad. El diagrama de contexto inicial debe ser una vista ge-neral que incluya las entradas básicas, el sistema general y las salidas. Este diagrama será el más general, unaverdadera vista panorámica del movimiento de datos en el sistema y la conceptualización más amplia posible delsistema.El diagrama de contexto es el nivel más alto en un diagrama de flujo de datos y contiene sólo un proceso, elcual representa a todo el sistema. El proceso recibe el número cero. Todas las entidades externas se muestran enwww.xlibros.com
196 PARTE III • EL PROCESO DE ANÁLISIS1. Hacer una lista de las actividades de la empresa y usarla para determinarlos siguientes elementos:• Entidades externasFlujos de datosProcesosAlmacenes de datos2. Crear un diagrama de contexto que muestre las entidades externas ylos flujos de datos que entran y salen del sistema. No debe mostrarprocesos detallados ni almacenes de datos.3. Dibujar el Diagrama 0, el siguiente nivel. Puede mostrar los procesospero debe mantenerlos en un nivel general. En este nivel puede mostrarlos almacenes de datos.4. Crear un diagrama hijo para cada uno de los procesos en el Diagrama 0.5. Verificar los errores y asegurarse de que las etiquetas que asigne a cadaproceso y flujo de datos sean significativas.6. Desarrollar un diagrama de flujo de datos físico a partir del diagrama deflujo de datos lógico. Establecer la diferencia entre los procesos manualesy los automatizados, describir los archivos e informes actuales pornombre y agregar controles para indicar cuando se completen los procesoso se produzcan errores.7. Particionar el diagrama de flujo de datos físico mediante la separación oagrupación de partes del diagrama para facilitar la programación y laimplementación.Cómo desarrollar diagramas de flujo dedatos mediante una metodología arriba-abajoFIGURA 7.2Pasos para desarrollar diagramasde flujo de datos.el diagrama de contexto, así como el flujo de datos principal que entra y sale de ellas. El diagrama no contienealmacenes de datos y es bastante simple de crear una vez que los analistas conocen las entidades externas y elflujo de datos que entra y sale de ellas.Dibujo del Diagrama 0 (el siguiente nivel)Podemos obtener más detalles de lo que permite el diagrama de contexto si “expandimos” los diagramas. Lasentradas y salidas especificadas en el primer diagrama permanecen constantes en todos los subsiguientes. Sinembargo, el resto del diagrama original se expande en acercamientos que incluyan de tres a nueve procesos ymuestren los almacenes de datos, junto con los nuevos flujos de datos de niveles inferiores. El efecto es comosi tomáramos una lupa para ver el diagrama de flujo original. Cada diagrama expandido debe ocupar sólo unahoja de papel. Al expandir los DFD en subprocesos, el analista de sistemas empieza a llenar los detalles sobre elmovimiento de los datos. El manejo de las excepciones se ignora durante los primeros dos o tres niveles en losdiagramas de flujo de datos.El Diagrama 0 es la expansión del diagrama de contexto; puede incluir hasta nueve procesos. Si incluimosmás procesos en este nivel obtendremos un diagrama abarrotado de información que será difícil de comprender.Cada proceso se enumera con un entero, por lo general empezando a partir de la esquina superior izquierda deldiagrama y avanzando hacia la esquina inferior derecha. En el Diagrama 0 se incluyen los principales almacenesde datos del sistema (que representan a los archivos maestros) y todas las entidades externas. En la figura 7.3 seilustra de manera esquemática el diagrama de contexto y el Diagrama 0.Como un diagrama de flujo de datos es bidimensional (en vez de lineal), tal vez quiera empezar en cualquierpunto y avanzar hacia delante o hacia atrás por el diagrama. Si no está seguro de lo que podría incluir en cual-quier punto, tome una entidad externa, proceso o almacén de datos distinto y empiece a dibujar el flujo a partirde él. Usted puede:www.xlibros.com
CAPÍTULO 7 • USO DE DIAGRAMAS DE FLUJO DE DATOS 197Flujo dedatos CEntrada BEntrada ASalida CEntrada AFlujo dedatos B Salida CRegistro A Registro ERegistro A Registro EEntrada BFlujo dedatos DProcesogeneralBBBProcesogeneralAAAProcesogeneralCCCProcesogeneralDDDEntidad3Entidad3Entidad1Entidad2Entidad1Entidad201 23 4Nombre delsistemaAlmacén de datos 1D1 Almacén de datos 2D2FIGURA 7.3Los diagramas de contexto(superior) se pueden “expandir” enun Diagrama 0 (inferior). Observeel mayor detalle en el Diagrama 0.1. Empezar con el flujo de datos proveniente de una entidad en el lado de entrada. Haga preguntas tales como:“¿Qué ocurre con los datos que entran al sistema?”, “¿Se guardan?”, “¿Constituyen la entrada para variosprocesos?”.2. Trabaje en sentido inverso desde un flujo de datos de salida. Examine los campos de salida en un documentoo pantalla (este método es más sencillo si se crearon prototipos). Para cada campo en la salida pregunte losiguiente: “¿De dónde proviene?” o “¿Se calcula o se guarda en un archivo?”. Por ejemplo, cuando la salidaes un CHEQUE DE NÓMINA, el NOMBRE DE EMPLEADO y la DIRECCIÓN se ubicarían en un archivode EMPLEADO, las HORAS TRABAJADAS estarían en un REGISTRO DE TIEMPO y se calcularían elSUELDO BRUTO y las DEDUCCIONES. Cada archivo y registro estaría conectado al proceso que produceel cheque de nómina.3. Examine el flujo de datos que entra o sale de un almacén de datos. Pregunte: “¿Qué procesos colocandatos en el almacén?” o “¿Qué procesos utilizan los datos?”. Tenga en cuenta que un almacén de datosque se utilice en el sistema en el que usted esté trabajando puede ser producido por un sistema distinto.Por ende, desde su posición de ventaja, tal vez no haya ningún flujo de datos que entre al almacén dedatos.4. Analice un proceso bien definido. Examine los datos de entrada que necesita el proceso y la salida queproduce. Después conecte la entrada y la salida a los almacenes de datos y las entidades apropiadas.5. Tome nota de cualquier área confusa en donde no esté seguro de lo que se debería incluir o de la entrada osalida requerida. Al estar consciente de las áreas problemáticas podrá formular una lista de preguntas paralas entrevistas de seguimiento con los usuarios clave.www.xlibros.com
198 PARTE III • EL PROCESO DE ANÁLISISCreación de diagramas hijos (niveles más detallados)Cada proceso en el Diagrama 0 puede a su vez expandirse para crear un diagrama hijo más detallado. Al procesoque se expande en el Diagrama 0 se le conoce como el proceso padre, y al diagrama que resulta se le conocecomo el diagrama hijo. La regla principal para crear diagramas hijos es el balanceo vertical; esta regla estableceque un diagrama hijo no puede producir salida o recibir entrada que el proceso padre no produzca o reciba tam-bién. Todos los datos entrantes o salientes del proceso padre deben mostrarse como entrantes o salientes en eldiagrama hijo.El diagrama hijo recibe el mismo número que su proceso padre en el Diagrama 0. Por ejemplo, el proceso 3 seexpande en el diagrama 3. Los procesos en el diagrama hijo se enumeran mediante el uso del número del procesopadre, un punto decimal y un número único para cada proceso hijo. En el diagrama 3 los procesos se enumera-rían como 3.1, 3.2, 3.3 y así en lo sucesivo. Esta convención permite al analista rastrear una serie de procesos através de muchos niveles de explosión. Si el Diagrama 0 describe los procesos 1, 2 y 3, los diagramas hijos 1, 2y 3 se encuentran todos en el mismo nivel.Por lo general, las entidades no se muestran en los diagramas hijos debajo del Diagrama 0. El flujo de datosque concuerda con el flujo padre se denomina flujo de datos de interfaz y se muestra como una flecha que entrao sale de un área en blanco del diagrama hijo. Si el proceso padre tiene un flujo de datos que lo conecta con unalmacén de datos, el diagrama hijo puede incluir el almacén de datos también. Además, este diagrama de nivelinferior puede contener almacenes de datos que no se muestren en el proceso padre. Por ejemplo, se puede in-cluir un archivo que contenga una tabla de información tal como una tabla de impuestos, o un archivo que vinculedos procesos en el diagrama hijo. Los flujos de datos menores, como una línea de error, se pueden incluir en undiagrama hijo pero no en el padre.Los procesos se pueden o no expandir, dependiendo de su nivel de complejidad. Cuando un proceso no seexpande, se dice que es funcionalmente primitivo y se le denomina proceso primitivo. Hay que escribir lógicapara describir estos procesos; veremos esto con detalle en el capítulo 9. En la figura 7.4 se ilustran los nivelesdetallados en un diagrama de flujo de datos hijo.Comprobación de errores en los diagramasVarios de los errores que se cometen al dibujar diagramas de flujo de datos son:1. Olvidar incluir un flujo de datos o apuntar una flecha en dirección equivocada. Un ejemplo es dibujar unproceso que muestra a todos sus flujos de datos como entradas o a todos como salidas. Cada procesotransforma los datos: debe recibir datos de entrada y producir datos de salida. Por lo general este tipo deerror ocurre cuando el analista olvida incluir un flujo de datos o coloca una flecha apuntando en direcciónequivocada. El proceso 1 en la figura 7.5 sólo contiene una entrada debido a que la flecha de SUELDOBRUTO apunta en dirección equivocada. Este error también afecta al proceso 2, CALCULAR MONTO ARETENER, al cual también le falta un flujo de datos que representa la entrada para las tasas de retención yel número de dependientes.2. Conectar almacenes de datos y entidades externas directamente entre sí. No se pueden conectar losalmacenes de datos y las entidades entre sí; se deben conectar sólo mediante un proceso. Un archivo no seinterconecta con otro archivo sin la ayuda de un programa o una persona que mueva los datos, por lo cualARCHIVO MAESTRO DE EMPLEADOS no puede producir directamente el archivo RECONCILIACIÓNDE CHEQUES. Las entidades externas no trabajan directamente con archivos. Por ejemplo, no esconveniente que un cliente hurgue por el archivo maestro de clientes. Por lo tanto, el EMPLEADO nopuede crear el ARCHIVO DE TIEMPO DE EMPLEADOS. Dos entidades externas conectadas en formadirecta indican que desean comunicarse entre sí. Esta conexión no se incluye en el diagrama de flujode datos a menos que el sistema facilite la comunicación. La producción de un informe es una instancia deeste tipo de comunicación. Sin embargo, debe haber un proceso interpuesto entre las entidades paraproducir el informe.3. Etiquetar de manera incorrecta los procesos o el flujo de datos. Inspeccione el diagrama de flujo de datospara asegurar que cada objeto o flujo de datos esté identificado en forma apropiada. Un proceso debe indicarel nombre del sistema o debe usar el formato verbo-sustantivo-adjetivo. Cada flujo de datos se debedescribir con un sustantivo.4. Incluir más de nueve procesos en un diagrama de flujo de datos. Al tener muchos procesos se produce undiagrama sobrecargado de información que puede confundirnos al tratar de leerlo y entorpece lacomunicación en vez de mejorarla. Si hay más de nueve procesos involucrados en un sistema, agrupealgunos de los procesos que trabajen en conjunto para formar un subsistema y colóquelos en undiagrama hijo.www.xlibros.com
CAPÍTULO 7 • USO DE DIAGRAMAS DE FLUJO DE DATOS 199Flujo dedatos DRegistro AEntrada BEntidad23Flujo dedatos DProcesodetalladoYYYProcesodetalladoXXXProcesodetalladoZZZ4Entrada B3.1Registro detransacciones 1 D5 Archivo detransacciones 1Registro detransacciones 1Error3.2Flujode datosdetallado Z3.3Registro AEl flujo de datosdel proceso padreal diagrama hijodebe coincidir.Flujo de datos quecoincide.Se pueden agregarlíneas de error en undiagrama hijodetallado.Se pueden agregararchivos de transaccióna diagramas de nivelesmás bajos.El flujo de salidadebe coincidir conel del procesopadre.ProcesogeneralCCCProcesogeneralDDDD1 Almacénde datos 1D1 Almacén de datos 1FIGURA 7.4Diferencias entre el diagrama padre (superior) y el diagrama hijo (inferior).5. Omitir el flujo de datos. Examine su diagrama en busca de flujo lineal; es decir, un flujo de datos en el quecada proceso sólo tiene una entrada y una salida. Excepto en el caso de los diagramas de flujo con datos dediagramas hijos muy detallados, el flujo de datos lineal ocurre raras veces. Por lo general su presencia indicaque faltan flujos de datos en el diagrama. Por ejemplo, el proceso CALCULAR MONTO DE RETENCIÓNnecesita el número de dependientes que tiene un empleado y las TASAS DE RETENCIÓN como entrada.Además, no se puede calcular el SUELDO NETO sólo con base en la RETENCIÓN, y el CHEQUE DEPAGO DEL EMPLEADO no se puede crear sólo a partir del SUELDO NETO; también hay que incluir unNOMBRE DE EMPLEADO así como las cifras de nómina actuales y del año a la fecha, además delMONTO DE RETENCIÓN.6. Crear una descomposición (o expansión) desbalanceada en los diagramas hijos. Cada diagrama hijo debetener el mismo flujo de datos de entrada y salida que el proceso padre. La excepción a esta regla es la salidamenor, como las líneas de error que se incluyen sólo en el diagrama hijo. El diagrama de flujo de datos de lawww.xlibros.com
200 PARTE III • EL PROCESO DE ANÁLISISSueldonetoEmpleadoD2 Archivo de tiempode empleadosRegistro de tiempode empleadoD1 Archivo maestrode empleadosHorastrabajadasSueldo bruto RetenciónCheque de pagode empleadoRegistro deempleadoRegistro deempleadoD1 Archivo maestrode empleadosRegistro dereconciliaciónde chequesD3 Reconciliación decheques EmpleadoUna entidad externano se debe conectarde manera directa aun almacén de datos.Un almacén de datosno se debe conectarde manera directa aotro almacén dedatos.CalcularsueldobrutoCalcularmonto deretenciónCalcularsueldo netoImprimircheque de pagode empleado1 2 34El proceso 1 notiene salida.El proceso 2 no tieneentrada. El flujo dedatos Sueldo brutova en direcciónequivocada.FIGURA 7.5Errores comunes que puedenocurrir en un diagrama de flujo dedatos (ejemplo de nómina).figura 7.6 está dibujado en forma correcta. Observe que, aunque el flujo de datos no es lineal, podemosseguir con claridad una ruta directamente desde la entidad de origen hasta la entidad de destino.DIAGRAMAS DE FLUJO DE DATOS LÓGICOS Y FÍSICOSLos diagramas de flujo de datos se clasifican como lógicos o físicos. Un diagrama de flujo de datos lógico seenfoca en la empresa y la forma en que ésta opera. No se preocupa por la forma en que se construirá el sistema,sino que describe los eventos de la empresa que se llevarán a cabo, además de los datos requeridos y producidospor cada evento. En contraste, un diagrama de flujo de datos físico muestra cómo se implementará el sistema,incluyendo hardware, software, los archivos y las personas involucradas en el sistema. La tabla de la figura 7.7compara las características de los modelos lógicos y físicos. Cabe mencionar que el modelo lógico refleja a laempresa, mientras que el modelo físico describe al sistema.Lo ideal es desarrollar sistemas para analizar el sistema actual (el DFD lógico actual) y después agregar lascaracterísticas que debería incluir el nuevo sistema (la DFD lógica propuesta). Por último hay que desarrollarlos mejores métodos para implementar el nuevo sistema (el DFD físico). En la figura 7.8 se muestra esta progre-sión.Al desarrollar un diagrama de flujo de datos lógico para el sistema actual podemos comprender con claridadla forma en que opera el sistema actual y, por ende, constituye un buen punto de partida para desarrollar el mo-delo lógico del sistema actual. Como este paso lleva mucho tiempo, a menudo se omite para pasar directamenteal DFD lógico propuesto.Un argumento a favor de tomarse el tiempo para construir el diagrama de flujo de datos lógico del sistemaactual es que podemos utilizarlo para crear el diagrama de flujo de datos lógico del nuevo sistema. Podemosquitar los procesos que no serán necesarios en el nuevo sistema y agregar las nuevas características, activida-www.xlibros.com
CAPÍTULO 7 • USO DE DIAGRAMAS DE FLUJO DE DATOS 201EmpleadoD2 Archivo de tiempode empleadosRegistrode tiempode empleadoD1 Archivo maestrode empleadosHorastrabajadasSueldo brutoRegistro deempleadoD1 Archivo maestrode empleadosRegistro dereconciliaciónde chequesEmpleadoRegistro de tiempode empleadoNúmero dedependientes D4 Tablas deretenciónTasas deretenciónD3 Reconciliaciónde chequesSueldonetoMonto deretenciónMonto deretenciónSueldo brutoSueldobrutoRegistro deempleadoCheque de pagode empleadoInformación decheque de pagoCrear registrode tiempo deempleado1Creararchivo dereconciliaciónde cheques6Calcularsueldobruto2Calcularmonto deretención3Calcularsueldoneto4Imprimircheque deempleado5FIGURA 7.6El diagrama de flujo de datos correcto para el ejemplo de la nómina.des, procesos de salida, de entrada y datos almacenados. Esta metodología ofrece un medio para asegurar quese retengan las características esenciales del sistema anterior en el nuevo sistema. Además, al utilizar el modelológico del sistema actual como base para el sistema propuesto podemos realizar una transición gradual hacia eldiseño del nuevo sistema. Una vez desarrollado el modelo lógico del nuevo sistema, podemos usarlo para crearun diagrama de flujo de datos físico para este nuevo sistema.En la figura 7.9 aparece un diagrama de flujo de datos lógico y un diagrama de flujo de datos físico paraun cajero de una tienda de abarrotes. El CLIENTE lleva los ARTÍCULOS a la caja registradora; se BUSCANlos PRECIOS de todos los ARTÍCULOS y después se obtiene el total; después se proporciona el PAGO al ca-jero; por último, el CLIENTE obtiene un RECIBO. El diagrama de flujo de datos lógico ilustra los procesosinvolucrados sin entrar en los detalles sobre la implementación física de las actividades. El diagrama de flujode datos físico muestra que se utiliza un CÓDIGO DE BARRAS del código de producto universal (UPC) quese encuentra en la mayoría de los artículos de la tienda de abarrotes. Además, el diagrama de flujo de datosfísico menciona procesos manuales tales como la exploración, explica que se utiliza un archivo temporal parawww.xlibros.com
202 PARTE III • EL PROCESO DE ANÁLISISCaracterística de diseño Lógico FísicoQué describe elmodeloColecciones de datossin importar cómo seguarden éstosMuestran los almacenesde datos querepresentan coleccionespermanentes de datosCómo se implementará el sistema (o cómoopera el sistema actual)Cómo operala empresaControles del sistemaTipo de almacenes dedatosMuestra los controlesde la empresaMuestra los controles para validar los datos deentrada, para obtener un registro (estado deregistro encontrado), para asegurar que secomplete un proceso con éxito y para la seguridaddel sistema (ejemplo: registros del diario)Archivos maestros, archivos de transición.Cualquier proceso que opere en dosmomentos distintos se debe conectarmediante un almacén de datosArchivos y bases de datos físicas,archivos manualesQué representan losalmacenes de datosQué representanlos procesosActividades dela empresaProgramas, módulos de programasy procedimientos manualesFIGURA 7.7Características comunes para losdiagramas de flujo de datoslógicos y físicos.Diagrama de flujode datos lógiconuevoDiagrama de flujode datos físiconuevoDiagrama deflujo de datoslógico actualPara derivar el diagrama de flujode datos lógico para el sistemaactual hay que examinar el diagramade flujo de datos físico y aislar lasactividades únicas de la empresa.Para crear el diagrama de flujo dedatos lógico para el nuevo sistemahay que agregar la entrada, salida ylos procesos requeridos en el nuevosistema al diagrama de flujo de datoslógico para el sistema actual.Para derivar el diagrama de flujo dedatos físico hay que examinar losprocesos en el nuevo diagrama lógico.Hay que determinar dónde deben existirlas interfaces de usuario, la naturaleza delos procesos y los almacenes de datosnecesarios.FIGURA 7.8La progresión del modelológico al modelo físico.mantener un subtotal de artículos e indica que el PAGO se puede realizar mediante EFECTIVO, CHEQUE oTARJETA DE DÉBITO. Por último, hace referencia al recibo por su nombre, RECIBO DE CAJA REGIS-TRADORA.Cómo desarrollar diagramas de flujo de datos lógicosPara desarrollar un diagrama de este tipo hay que construir primero un diagrama de flujo de datos lógico para elsistema actual. Hay varias ventajas en cuanto al uso de un modelo lógico:1. Mejor comunicación con los usuarios.2. Sistemas más estables.3. Los analistas comprenden mejor el funcionamiento de la empresa.4. Flexibilidad y mantenimiento.5. Se eliminan las redundancias y se facilita la creación del modelo físico.www.xlibros.com
CAPÍTULO 7 • USO DE DIAGRAMAS DE FLUJO DE DATOS 203Artículos y preciosClienteIdentificarartículo1D1 PreciosArtículos porcomprarPreciosBuscarprecios2ID de artículo Cantidad a pagarCalcular elcosto totaldel pedido3ReciboSaldartransacción yemitir recibo4ClientePagoDiagrama de flujo de datos lógicoCódigos y preciosde artículosClientePasarartículo porel escáner(manual)1D1 Archivo de precios UPC Archivo de trans.temporalArtículosa pagarDescripción y preciosdel artículoBuscar códigoy precio enel archivo2Código debarras UPCMonto calculadoa pagarCalcularcostototal3Recibode la cajaregistradoraRecibir dineroy darrecibo(manual)4ClienteEfectivo,cheque otarjeta dedébitoDiagrama de flujo de datos físicoCódigo UPCD2Artículos, preciosy subtotalesArtículos yprecios FIGURA 7.9El diagrama deflujo de datosfísico (inferior)muestra ciertosdetalles que no seencuentran en eldiagrama de flujode datos lógico(superior).Es más fácil usar un modelo lógico al momento de comunicarnos con los usuarios del sistema, ya que se centraen las actividades de la empresa. En consecuencia, los usuarios están familiarizados con las actividades esencia-les y con muchos de los requerimientos humanos de información de cada actividad.Los sistemas que se forman mediante el uso de un diagrama de flujo de datos lógico son a menudo más es-tables, ya que se basan en eventos de negocios y no en una tecnología o método de implementación específico.Los diagramas de flujo de datos lógicos representan las características de un sistema que existirían sin importarcuáles sean los medios físicos de las actividades de negocios. Por ejemplo, las actividades tales como solicitar latarjeta de membresía de una tienda de video, revisar un DVD y devolver un DVD se llevarían a cabo sin importarque la tienda tuviera un sistema automatizado, manual o híbrido.Cómo desarrollar diagramas de flujo de datos físicosUna vez que desarrolle el modelo lógico del nuevo sistema, podrá usarlo para crear un diagrama de flujo de datosfísico. Este diagrama muestra cómo se construirá el sistema y por lo general contiene la mayoría de (si no es quetodos) los elementos que se encuentran en la figura 7.10. Así como los diagramas de flujo de datos lógicos tienenciertas ventajas, los diagramas de flujo de datos físicos tienen otras:1. Aclarar qué procesos desempeñan los humanos (manuales) y cuáles son automatizados.2. Describir los procesos con más detalle que los DFD lógicos.3. Secuenciar procesos que se tengan que realizar en cierto orden específico.4. Identificar los almacenes de datos temporales.5. Especificar los nombres reales de los archivos, tablas de bases de datos y listados impresos.6. Agregar controles para asegurar que los procesos se realicen en forma apropiada.www.xlibros.com
204 PARTE III • EL PROCESO DE ANÁLISISContenido de los diagramas de flujo de datos físicos• Procesos manuales• Procesos para agregar, eliminar, modificar y actualizar registros• Procesos para introducir y verificar datos• Procesos de validación para asegurar que se introduzcan los datos conprecisión• Secuenciar procesos para reorganizar el orden de los registros• Procesos para producir todas las salidas únicas del sistema• Almacenes de datos intermedios• Se utilizan los nombres de archivo reales para guardar datos• Controles para indicar que se completaron las tareas o condiciones de errorFIGURA 7.10Los diagramas de flujo de datosfísicos contienen muchoselementos que no se encuentran enlos diagramas de flujo de datoslógicos.Actividad Cliente Artículo Pedido Detalle del pedidoInicio de sesión del cliente RInformación sobre un artículo RSelección de un artículo R C CPasar a pagar el pedido U U U RAgregar cuenta CAgregar artículo CCerrar cuenta del cliente DQuitar artículo obsoleto DCambiar demografía del cliente RUCambiar pedido del cliente RU RU RU CRUDInformación sobre el pedido R R R RFIGURA 7.11Una matriz CRUD para unescaparate en Internet. Se puedeusar esta herramienta pararepresentar en dónde ocurren cadauno de los cuatro procesos (Crear,Leer, Actualizar y Eliminar Create, Read, Update y Delete)dentro de un sistema.A menudo los diagramas de flujo de datos físicos son más complejos que los diagramas de flujo de datos lógi-cos simplemente debido a que hay muchos datos presentes en un sistema. Con frecuencia se utiliza el acrónimoCRUD para Crear, Leer, Actualizar y Eliminar (Create, Read, Update y Delete), las actividades que deben estarpresentes en un sistema para cada archivo maestro. Una matriz CRUD es una herramienta para representar endónde ocurren cada uno de estos procesos en un sistema. La figura 7.11 es una matriz CRUD para un escaparateen Internet. Cabe mencionar que algunos de los procesos incluyen más de una actividad. Los procesos de entradade datos tales como teclear y verificar también forman parte de los diagramas de flujo de datos físicos.Los diagramas de flujo de datos físicos también tienen almacenes de datos intermedios, a menudo compues-tos por un archivo de transacciones o una tabla de una base de datos temporal. Con frecuencia los almacenes dedatos intermedios consisten en archivos de transacciones que se utilizan para guardar datos entre procesos. Comoes poco probable que la mayoría de los procesos que requieren acceso a un conjunto dado de información seejecuten en el mismo instante, los archivos de transacciones deben contener los datos de un proceso al siguiente.Podemos encontrar un ejemplo de fácil comprensión sobre este concepto en las experiencias diarias de las com-pras de abarrotes, la preparación de comidas y la acción de comer. Las actividades son:1. Seleccionar artículos de los estantes.2. Pasar a pagar a una caja.3. Transportar los abarrotes hasta la casa.4. Preparar una comida.5. Comer.www.xlibros.com
CAPÍTULO 7 • USO DE DIAGRAMAS DE FLUJO DE DATOS 205Cada una de estas cinco actividades estaría representada por un proceso separado en un diagrama de flujo de datosfísico y cada una ocurre en un momento distinto. Por ejemplo, no sería común transportar los abarrotes a la casa ycomerlos al mismo tiempo. Por lo tanto, se requiere un “almacén de datos de transacciones” para vincular cadatarea. Al seleccionar elementos, el almacén de datos de transacciones es el carrito de compras. Después del si-guiente proceso (pasar a pagar), el carrito ya no es necesario. El almacén de datos de transacciones que vincula losprocesos de pasar a pagar y transportar los abarrotes a la casa es la bolsa de compras (¡es más económico que dejarque usted se lleve el carrito a su casa!). Las bolsas son una manera ineficiente de almacenar los abarrotes una vez queestán en la casa, por lo que se utilizan las alacenas y un refrigerador como almacén de datos de transacciones entrela actividad de transportar los artículos a la casa y preparar la comida. Por último, un plato, un tazón y un vasoconstituyen el vínculo entre los procesos de preparar y comer los alimentos.También se puede incluir información de sincronización. Por ejemplo, un DFD físico puede indicar quese debe ejecutar un programa de edición antes de un programa de actualización. Las actualizaciones se debenrealizar antes de producir un informe de resumen o se debe introducir un pedido en un sitio Web antes de poderverificar con la institución financiera la cantidad que se va a cargar a una tarjeta de crédito. Cabe mencionar quedebido a tales consideraciones, un diagrama de flujo de datos físico tal vez parezca más lineal que un modelológico.Para crear el diagrama de flujo de datos físico para un sistema hay que analizar sus salidas y entradas. Alcrear un diagrama de flujo de datos físico, al flujo de datos de entrada que proviene de una entidad externa sele denomina algunas veces desencadenador, debido a que empieza las actividades de un proceso; al flujo dedatos de salida de una entidad externa se le denomina algunas veces respuesta, ya que se envía como resultadode alguna actividad. Hay que determinar cuáles campos de datos o elementos hay que teclear. Estos campos sedenominan elementos base y se deben almacenar en un archivo. Los elementos que no se teclean, sino que cons-tituyen el resultado de un cálculo o una operación lógica, se denominan elementos derivados.Algunas veces no queda claro cuántos procesos hay que colocar en un diagrama y cuándo se debe crear undiagrama hijo. Una sugerencia es examinar cada proceso y contar el número de flujos de datos que entran y salende él. Si el total es mayor que cuatro, el proceso es un buen candidato para un diagrama hijo. Más adelante eneste capítulo ilustraremos los diagramas de flujo de datos físicos.MODELADO DE EVENTOS Y DIAGRAMAS DE FLUJO DE DATOS Una metodología práctica para crear diagramas de flujode datos físicos es la creación de un fragmento de diagrama de flujo de datos simple para cada evento único del sistema.Los eventos provocan que el sistema haga algo y actúan como desencadenador para el sistema. Los desen-cadenadores inician actividades y procesos, los que a su vez utilizan datos o producen salida. Un ejemplo de unevento es cuando un cliente reserva un vuelo en Web; a medida que se envía cada formulario Web se activanprocesos tales como validar y guardar los datos, o aplicar formato a la siguiente página Web y mostrarla.Por lo general los eventos se sintetizan en una tabla de respuesta a eventos. En la figura 7.12 se muestra unejemplo de una tabla de respuesta a eventos para una empresa con un escaparate en Internet. Un fragmento dediagrama de flujo de datos se representa mediante una fila en la tabla. Cada fragmento de DFD es un proceso in-dividual en un diagrama de flujo de datos. Después se combinan todos los fragmentos para formar el Diagrama 0.Las columnas desencadenador y respuesta se convierten en los flujos de datos de entrada y salida; la actividad seconvierte en el proceso. El analista debe determinar los almacenes de datos requeridos para el proceso medianteun análisis de los flujos de datos de entrada y salida. En la figura 7.13 se ilustra una parte del diagrama de flujode datos para las primeras tres filas de la tabla de respuesta a eventos.La ventaja de crear diagramas de flujo de datos con base en eventos es que los usuarios están familiari-zados con los eventos que se llevan a cabo en su área de negocios y saben cómo estos eventos impulsan otrasactividades.CASOS DE USO Y DIAGRAMAS DE FLUJO DE DATOS En el capítulo 2 presentamos el concepto de un caso de uso.Utilizamos esta noción de un caso de uso para crear diagramas de flujo de datos. Un caso de uso sintetiza unevento y tiene un formato similar para procesar las especificaciones (lo cual se describe en el capítulo 9). Cadacaso de uso define una actividad junto con su desencadenador, su entrada y su salida. En la figura 7.14 se ilustraun caso de uso para el proceso 3, Agregar artículo del cliente.Este método permite al analista trabajar con los usuarios para comprender la naturaleza de los procesos yactividades, para después crear un fragmento individual del diagrama de flujo de datos. Al crear casos de uso,primero hay que hacer un intento por definir los casos de uso sin entrar en detalles. Este paso provee una vistageneral del sistema y conduce a la creación del Diagrama 0. Debemos decidir cuáles serán los nombres y proveeruna breve descripción de la actividad. Hay que hacer una lista de las actividades, entradas y salidas de cada uno.Asegúrese de documentar los pasos utilizados en cada caso de uso. Éstos deben estar en la forma de reglas denegocios que listen o expliquen las actividades humanas y del sistema que se completaron para cada casode uso. Si acaso es posible, liste las actividades en la secuencia en la que normalmente se ejecutarían. Después deter-mine los datos utilizados en cada paso. Este paso es más fácil si se ha completado un diccionario de datos. Porwww.xlibros.com
206 PARTE III • EL PROCESO DE ANÁLISISEvento Actividad Respuesta DestinoOrigen DesencadenadorEl clienteinicia sesiónEl cliente exploralos artículos enel escaparateWebEl cliente colocael artículo en elcarrito de comprasdel escaparateWebEl cliente pasaa pagarObtener pagodel clienteEnviar un correoelectrónico al clienteTemporal, por horas ClienteEnviar al cliente un correoelectrónico para confirmar el envíoCliente Información de tarjetade créditoVerificar el monto de la tarjetade crédito con la compañíade tarjetas de crédito.Enviar.Datos de tarjetade créditoRetroalimentacióndel clienteCompañía detarjetasde créditoClienteCliente Hace clic en el botón“Pasar a pagar” en lapágina WebMostrar página Webdel pedido del cliente.Página Webde verificaciónAlmacenar datos en elRegistro detallado del pedido.Calcular costo de envíomediante las tablas de envío.Actualizar el total del cliente.Actualizar la cantidad delartículo disponible.Compra del artículo(número y cantidad)Página Webde artículoscompradosNúmero y contraseñadel clienteInformación sobreartículosPágina Webde bienvenidaClienteBuscar registro delcliente y verificarcontraseña.Enviar página Webde bienvenida.Buscar precio delartículo y la cantidaddisponible. Enviar páginaWeb de respuesta de artículo.Página Web derespuestade artículoClienteCliente ClienteCliente ClienteFIGURA 7.12Una tabla de respuesta a eventos para un escaparate en Internet.último, pida a los usuarios que revisen y sugieran modificaciones de los casos de uso. Es importante que éstosse escriban en forma clara (en el capítulo 10 encontrará una discusión más detallada sobre el UML, los casos deuso y los diagramas de casos de uso).Cómo particionar los diagramas de flujo de datosEl particionamiento es el proceso de examinar un diagrama de flujo de datos y determinar cómo se debe dividiren colecciones de procedimientos manuales y colecciones de programas de computadora. Hay que analizar cadaproceso para determinar si debe ser manual o automatizado, y agrupar los procedimientos automatizados en unaserie de programas de computadora. Por lo general se dibuja una línea punteada alrededor de un proceso o grupode procesos que se deben colocar en un solo programa de computadora.Hay seis motivos para particionar los diagramas de flujo de datos:1. Distintos grupos de usuarios ¿Hay varios grupos de usuarios que realizan los procesos, a menudo enubicaciones físicas distintas en la empresa? De ser así, hay que particionarlos en distintos programas decomputadora. Un ejemplo es la necesidad de procesar las devoluciones y pagos de los clientes en una tiendadepartamental. Para ambos procesos hay que obtener información financiera que se utilice para ajustar lascuentas de los clientes (restar de la cantidad que debe el cliente), pero distintas personas realizan estosprocesos en ubicaciones distintas. Cada grupo necesita una pantalla distinta para registrar los detallesespecíficos de la transacción, ya sea una pantalla de crédito o de pago.2. Sincronización Hay que examinar la sincronización de los procesos. Si dos procesos se ejecutan en tiemposdistintos, no se pueden agrupar en un programa. Las cuestiones de sincronización también puedenrelacionarse con la cantidad de datos que se presenten en un momento dado en una página Web. Si un sitiode comercio electrónico tiene páginas Web bastante extensas para ordenar artículos o hacer una reservación deuna aerolínea, tal vez las páginas Web se puedan particionar en programas separados que apliquen formato alos datos y los presenten.www.xlibros.com
CAPÍTULO 7 • USO DE DIAGRAMAS DE FLUJO DE DATOS 2071Obtener iniciode sesióndel clienteClienteNúmero y contraseñadel clienteArchivo maestrodel clienteD1Página Web de bienvenidaRegistro del cliente2Explorarregistros deartículosClienteInformación del artículoArchivo maestrode artículosD2Página Web derespuesta de artículoRegistro de artículo3Agregarartículo delclienteClienteArtículo compradoTablas de envíosD8Archivo maestro deartículosD2Detalles del pedidoD7Archivo maestro delclienteD1Página Web deartículos compradosRegistro de artículoTarifas de envíoDetalles del pedidoRegistro de clienteFIGURA 7.13Diagramas de flujo de datos paralas primeras tres filas de la tablade respuesta a eventos delescaparate en Internet.3. Tareas similares Si dos procesos realizan tareas similares, se pueden agrupar en un programa decomputadora.4. Eficiencia Se pueden combinar varios procesos en un programa para un procesamiento eficiente. Porejemplo, si varios informes necesitan usar los mismos archivos de entrada extensos, al producirlos enconjunto podríamos ahorrar una cantidad considerable de tiempo de ejecución de la computadora.5. Consistencia de los datos Los procesos se pueden combinar en un programa para lograr la consistencia delos datos. Por ejemplo, una compañía de tarjetas de crédito puede tomar una “instantánea” y producir unavariedad de informes al mismo tiempo, de manera que las cifras sean consistentes.6. Seguridad Los procesos se pueden particionar en distintos programas por cuestiones de seguridad. Se puedecolocar una línea punteada alrededor de las páginas Web que estén en un servidor seguro para separarlasde las páginas Web en un servidor que no esté seguro. Por lo general, una página Web que se utiliza paraobtener la identificación y contraseña del usuario se particiona para separarla de las páginas de introducciónde pedidos o de otras páginas con actividades de negocios.EJEMPLO DE UN DIAGRAMA DE FLUJO DE DATOSEl siguiente ejemplo ilustra el desarrollo de un diagrama de flujo de datos mediante un análisis selectivo de cadauno de los componentes que exploramos anteriormente en el capítulo. Este ejemplo conocido como “División decatálogos de World’s Trend”, se utilizará también para ilustrar los conceptos que veremos en los capítulos 8 y 9.Desarrollar la lista de actividades de negociosEn la figura 7.15 encontrará una lista de actividades de negocios para World’s Trend; para desarrollarla podría-mos utilizar la información que se obtiene al interactuar con las personas en las entrevistas, por medio de lainvestigación y a través de la observación. Podemos usar esta lista para identificar a las entidades externas comoCLIENTE, CONTABILIDAD y ALMACÉN, así como los flujos de datos tales como INFORME DE CUEN-TAS POR COBRAR y ESTADO DE CUENTA DE FACTURACIÓN DE CLIENTE. Más adelante (cuandowww.xlibros.com
208 PARTE III • EL PROCESO DE ANÁLISIS1. Buscar el registro del artículo mediante el número del mismo. Si no seencontró el artículo, colocar un mensaje en la página Web de artículoscomprados.2. Almacenar los datos del artículo en el Registro de detalles del pedido.3. Usar el número de cliente para buscar el registro del cliente.4. Calcular el Costo de envío mediante el uso de tablas de envíos. Usar el Pesodel artículo del Registro del artículo y el Código postal del Registro del clientepara buscar el Costo de envío en las Tablas de envíos.5. Modificar el Total del cliente mediante el uso de la Cantidad comprada y elPrecio del artículo. Agregar el Costo de envío. Actualizar el Registro del cliente.6. Modificar la Cantidad del artículo disponible y actualizar el Registro del artículo.Pasos realizadosInformación para los pasosNombre de entradaTipo de desencadenador: Externo TemporalDesencadenador: El cliente coloca un artículo que desea pedir en el carrito de compras.Descripción: Agrega el artículo para el pedido de un cliente por Internet.Nombre del caso de uso: Agregar artículo del cliente ID del proceso: 3Nombre de salidaOrigen DestinoArtículo comprado(número ycantidad)Página Web deconfirmación deartículoscompradosCliente ClienteNúmero de artículo,registro de artículoNúmero de cliente,registro del clienteRegistro de detallesdel pedidoCódigo postal, Peso delartículo, Tabla de envíosCantidad ordenada,Registro del artículoRegistro de artículo,Cantidad comprada,Costo de envío, Registrodel clienteFIGURA 7.14Un formulario decaso de uso para elescaparate en Internetdescribe la actividadAgregar artículo delcliente junto con susdesencadenadores,entrada y salida.desarrollemos el diagrama de nivel 0 y los diagramas hijos) podremos usar la lista para definir los procesos,flujos de datos y almacenes de datos.Crear un diagrama de flujo de datos a nivel de contextoUna vez que se desarrolla esta lista de actividades hay que crear un diagrama de flujo de datos a nivel de con-texto, como el que se muestra en la figura 7.16. Este diagrama muestra el SISTEMA DE PROCESAMIENTODE PEDIDOS en la parte media (en el diagrama a nivel de contexto no se describen los procesos con detalle)www.xlibros.com
CAPÍTULO 7 • USO DE DIAGRAMAS DE FLUJO DE DATOS 209World’s Trend es un proveedor de pedidos por correo de ropa de moda y alta calidad. Losclientes hacen sus pedidos por teléfono, envían un formulario de pedido que se incluye concada catálogo o lo hacen a través del sitio Web.Resumen de las actividades de negocios1. Cuando entran los pedidos de los clientes, se actualiza tanto el archivo maestro de artículoscomo el archivo maestro de clientes. Si un artículo no está en existencia, se notifica aldepartamento de control de inventario.Si el pedido proviene de un nuevo cliente, se crea un registro en el archivo maestro de clientes.Se producen listas de selección de pedido para el pedido del cliente y se envían al almacén.Se prepara un estado de cuenta del envío.El proceso de enviar el pedido de un cliente implica obtener los artículos del almacén ycotejar el estado de cuenta del envío del cliente, obtener la dirección correcta del clientey enviar todo al cliente.Se genera el estado de cuenta del cliente y se envía un estado de cuenta de facturaciónal cliente una vez al mes.Se envía un informe de cuentas por cobrar al departamento de contabilidad.2.3.4.5.6.7.1000 International LaneCornwall, CT 06050W orld’s TrendFIGURA 7.15Un resumen de las actividadesde negocios para la División decatálogos de World’s Trend.Sistema deprocesamientode pedidos0Artículo en pedido pendientePedido del clienteInformación del nuevo clienteNúmero o descripción del artículoyPedido enviadoEstado de cuenta de facturación del clienteInformación de artículoInforme de cuentas por cobrarLista de selección de pedidoArtículos del pedidoClienteDepartamentode controlde inventarioClienteDepartamentodecontabilidadAlmacénFIGURA 7.16Un diagrama de flujo dedatos a nivel de contextopara el sistema deprocesamiento de pedidosen World’s Trend.www.xlibros.com
210 PARTE III • EL PROCESO DE ANÁLISISy cinco entidades externas (las dos entidades separadas que se llaman CLIENTE son en realidad una misma).También se muestran los flujos de datos que salen y entran en las entidades externas (por ejemplo, PEDIDODEL CLIENTE y LISTA DE SELECCIÓN DE PEDIDO).Dibujo del Diagrama 0Ahora hay que regresar a la lista de actividades y hacer una nueva lista de todos los procesos y almacenes de da-tos que podamos encontrar. Podemos agregar más después, pero hay que empezar a hacer la lista en este punto.Si cree tener suficiente información, dibuje un diagrama de nivel 0 como el de la figura 7.17. Asigne a estediagrama el nombre Diagrama 0 y mantenga los procesos en un nivel general, para no complicar el diagrama deAgregarpedidodel cliente1D2 Archivo maestrode artículosRegistrode artículoPedido del clienteyArtículo en pedido pendienteAgregarregistro decliente2Informacióndel nuevoclienteRegistrode clienteRegistrode clienteProducircuentas porcobrar7Informe decuentas porcobrarCrear estadode cuentadel cliente6Estado decuenta deenvío delcliente4PedidopendientePreparar estadode cuenta deenvíoProducirlistas deselección3Enviarpedido delcliente5Nombre y direccióndel clienteRegistrodel clienteRegistrode clientePedidopendientePedidopendientePedidopendientePedidopendienteLista deselección del pedidoArtículos que cumplencon el pedidoPedido enviadoEstado de cuenta defacturación del clienteAlmacénClienteClienteDepartamentode controlde inventariosD1 Archivo maestrode clientesDepartamentodecontabilidad8Informacióndel artículoNúmero odescripcióndel artículoD1 Archivo maestrodel clienteConsultarinformaciónde artículoClienteFIGURA 7.17Diagrama 0 delsistema deprocesamientode pedidos para laDivisión decatálogosde World’s Trend.www.xlibros.com
CAPÍTULO 7 • USO DE DIAGRAMAS DE FLUJO DE DATOS 211más (después podrá agregar más detalles). Cuando termine de dibujar los siete procesos, dibuje flujos de datosentre ellos y hacia las entidades externas (las mismas entidades externas que se muestran en el diagrama a nivelde contexto). Si cree que debe haber almacenes de datos como ARCHIVO MAESTRO DE ARTÍCULOS o AR-CHIVO MAESTRO DE CLIENTES, dibújelos y conéctelos a los procesos mediante el uso de flujos de datos.Ahora tómese el tiempo de enumerar los procesos y almacenes de datos. Ponga atención especial al momento deasignar etiquetas significativas. Compruebe los errores y corríjalos antes de continuar.Crear un diagrama hijoEn este punto trate de dibujar un diagrama hijo (algunas veces también se le conoce como diagrama de nivel 1),como el de la figura 7.18. Los procesos en los diagramas hijos están más detallados, ya que ilustran la lógica re-querida para producir la salida. Enumere sus diagramas hijos como Diagrama 1, Diagrama 2 y así en lo sucesivo,de acuerdo con el número que haya asignado a cada proceso en el diagrama de nivel 0.Al dibujar un diagrama hijo, haga primero una lista de subprocesos. Un proceso tal como AGREGAR PE-DIDO DEL CLIENTE puede tener subprocesos (en este caso hay siete). Conecte estos subprocesos entre sí yRegistro del clienteValidarcuenta delcliente1.1Error: no seencontró el clientePedido delclienteD1 Archivo maestrode clientesRegistrodel clienteInformación válida del clienteInformación válida del clienteActualizarregistrodel cliente1.6Crearpedidopendiente1.7 PedidopendientePedido delclienteTotalesdel pedidoTotalesdel pedidoCalculartotales delpedido1.5Precio y pesodel artículoD4 Tabla de envíosy manejoD2 Archivo maestrode artículosCostos de envíoDeterminarcantidaddisponible1.3Artículo enpedido pendienteValidarartículo delpedido1.2Error: no seencontró elartículoPedido delcliente Artículo válidoCantidad del artículodisponibleArtículodisponibleArtículodisponibleArtículodisponibleActualizarcantidad deartículo1.4Registrode artículoD2 Archivo maestrode artículosFIGURA 7.18Diagrama 1 del sistema deprocesamiento de pedidos para laDivisión de catálogos de World’sTrend.www.xlibros.com
212 PARTE III • EL PROCESO DE ANÁLISIStambién con los almacenes de datos cuando sea apropiado. Los subprocesos no tienen que estar conectados a en-tidades externas, ya que siempre podemos hacer referencia al diagrama de flujo de datos padre (o de nivel 0) paraidentificar estas entidades. Asigne etiquetas a los subprocesos como 1.1, 1.2, 1.3, etcétera. Tómese el tiempo derevisar errores y asegurarse de que las etiquetas tengan sentido.Crear un diagrama de flujo de datos físico a partir del DFD lógicoSi desea ir más allá del modelo lógico y dibujar también un modelo físico, vea la figura 7.19, un ejemplo de undiagrama hijo de flujo de datos físico del proceso 3, LISTAS DE SELECCIÓN DE PEDIDO. Los DFD físicosdan la oportunidad de identificar procesos para escanear los códigos de barras, mostrar pantallas, localizar regis-Leerregistro deartículo3.1Ubicación de recipientey sección del artículoInformación deartículo del pedidoD2 Archivo maestrode artículosRegistro de pedido Crearregistro deartículo delpedido3.2 Registro de artículodel pedidoRegistro deartículo delpedidoD6 Archivo de artículosdel pedidoObtenerregistrodel cliente3.4Registrodel clienteNombre del clienteD1 Archivo maestrode clientesNombre, direccióny teléfono del clienteAplicarformato alíneas delcliente3.5Línea del clienteRegistro delartículoordenadoAplicarformato alíneas delartículo3.6Línea de artículodel pedidoImprimirlista deselección delpedido3.7Lista deselección delpedidoRegistro delartículoordenadoD7 Archivo deartículos ordenadosOrdenarartículo porubicacióndentro delalmacén3.3FIGURA 7.19Un diagrama hijo de flujo dedatos físico para la Divisiónde catálogos de World’s Trend.www.xlibros.com
CAPÍTULO 7 • USO DE DIAGRAMAS DE FLUJO DE DATOS 213tros, crear y actualizar archivos. La secuencia de actividades es importante en los DFD físicos, ya que se haceénfasis en la forma en que trabajará el sistema y en qué orden ocurrirán los eventos.Al etiquetar un modelo físico debe tener cuidado en describir el proceso con mucho detalle. Por ejemplo, elsubproceso 3.3 en un modelo lógico podría ser simplemente ORDENAR ARTÍCULO, pero en el modelo físicosería mejor etiquetarlo como ORDENAR ARTÍCULO POR UBICACIÓN DENTRO DEL CLIENTE. Al escribiruna etiqueta para un almacén de datos, haga referencia al archivo o base de datos real, como ARCHIVO MAES-TRO DE CLIENTES o ARCHIVO DE ARTÍCULOS ORDENADOS. Al describir los flujos de datos describael formulario, informe o pantalla real. Por ejemplo, al imprimir una lista de selección de pedido puede asignar alflujo de datos el nombre LISTA DE SELECCIÓN DE PEDIDO.Cómo particionar el DFD físicoPor último hay que tomar el diagrama de flujo de datos físico y sugerir su particionamiento por medio de la se-paración o combinación de los procesos. Como dijimos antes, hay muchas razones para particionar: identificardistintos procesos para distintos grupos de usuarios, separar procesos que se necesitan realizar en distintos mo-mentos, agrupar tareas similares, agrupar procesos para mejorar la eficiencia, combinar procesos para lograr unaconsistencia o separarlos por cuestión de seguridad. La figura 7.20 muestra que el particionamiento es útil en elcaso de la División de catálogos de World’s Trend. Primero sería conveniente agrupar los procesos 1 y 2, ya quetendría sentido agregar nuevos clientes al mismo tiempo que colocaran su primer pedido. Después podríamoscolocar los procesos 3 y 4 en dos particiones separadas, ya que cada uno de estos procesos se debe realizar en unmomento distinto y, por ende, no se pueden agrupar en un solo programa.El proceso de desarrollar un diagrama de flujo de datos ahora está completo de arriba hacia abajo; primerodibujamos un diagrama de flujo de datos físico para acompañar al diagrama de flujo de datos lógico y despuésagrupamos o separamos los procesos. En los capítulos 8 y 9 volveremos a usar el ejemplo de World’s Trend.PARTICIONAMIENTO DE SITIOS WEBEl particionamiento es un principio muy útil al diseñar un sitio Web. Los diseñadores de sitios Web que utilizanformularios para recopilar datos pueden encontrar más apropiado dividir un sitio Web en una serie de páginasWeb, lo cual mejorará la forma en que los humanos utilizan el sitio, aumentará la velocidad de procesamiento yfacilitará el mantenimiento del mismo. Cada vez que haya que obtener datos de un almacén de datos o socio ex-terno, es conveniente que el diseñador Web considere la creación de un formulario Web único y un proceso DFDpara validar y procesar los datos.El desarrollador Web también puede usar Ajax para enviar una petición al servidor y recibir una pequeñacantidad de datos o un documento XML de vuelta en la misma página. Se puede utilizar Ajax para evitar lanecesidad de crear demasiadas páginas pequeñas que contengan sólo unos cuantos elementos adicionales omodificados en el formulario Web. Sin embargo, el analista debe crear varias páginas Web cuando sea nece-sario. Por ejemplo, consideremos el caso en el que hay que obtener una gran cantidad de datos del servidor,como una lista de todos los vuelos que concuerden con los aeropuertos de salida y de destino para ciertosdías de viaje. Al acceder a distintas tablas de la misma base de datos, se pueden obtener datos que contengancampos de distintas tablas y se pasen a un proceso. Pero si hay varias bases de datos involucradas, tal vez elanalista decida usar páginas Web separadas. Al requerir la entrada del usuario, el analista puede usar páginasWeb separadas o Ajax para facilitar un cambio en una lista desplegable o modificar una pequeña cantidad deinformación.Podemos ver un buen ejemplo de particionamiento en el desarrollo de un sitio de reservaciones de viajes ba-sado en Web. Para simplificar sólo analizaremos la parte correspondiente a la reservación de la aerolínea del sitioWeb, la cual se muestra en el diagrama de flujo de datos de la figura 7.21. Cabe mencionar que el diseñador Weboptó por crear varios procesos y particiones únicas para hacer una reservación de un vuelo. El proceso 1 recibey valida las fechas y aeropuertos introducidos por el cliente (o el agente de viajes que esté ayudando al cliente).Los datos de la selección se utilizan para obtener detalles de los vuelos y crear un almacén de datos de transac-ciones de los detalles sobre los vuelos que coincidan con la solicitud.Es conveniente particionar el proceso de buscar la información de los vuelos como un proceso separado, yaque hay que buscar en un almacén de datos y los detalles de los vuelos se utilizarán para mostrar una serie depáginas Web sucesivas con vuelos que coincidan. Después, una vez que el cliente seleccione un vuelo, hay queenviar la información a una aerolínea seleccionada. Es importante tener el archivo de transacciones de DETA-LLES DE VUELOS disponible para mostrar cada página Web de nuevos vuelos, ya que para volver a realizar elproceso de búsqueda tal vez se requiera una cantidad de tiempo que sea inaceptable para un humano que trate decompletar una transacción.www.xlibros.com
214 PARTE III • EL PROCESO DE ANÁLISISLa selección de vuelos disponibles (proceso 2) utiliza una base de datos interna, pero esta base de datos notiene información sobre la disponibilidad de asientos, ya que las aerolíneas reciben reservaciones de muchas or-ganizaciones de servicios de viajes. Esto significa que debe haber un proceso separado y un pequeño programaparticionados para determinar si los asientos están disponibles y para reservar asientos específicos.Como hay muchos procesos de entrada de usuario, se diseñan formularios para manejar todas las peticionesrelacionadas. Tener formularios separados implica que los formularios serán menos complejos, por lo que losusuarios los encontrarán más atractivos y fáciles de llenar. Este diseño cumple con los criterios de capacidad deuso y utilidad importantes al diseñar sitios Web para la interacción humano-computadora. También significa queel procesamiento se realizará con más rapidez, pues una vez que seleccione el vuelo, en el siguiente paso rela-cionado con la selección de asientos, el usuario ya no tendrá que introducir —ni ver— los detalles del vuelo otravez. La mayoría de los sitios Web de las aerolíneas utilizan ahora ventanas desplegables en las que los clientesapuntan su selección de asientos.Agregarpedido delcliente1ClienteD1 Archivo maestrode clientesRegistrodel clientePedido delcliente D3 Archivo de pedidosD2 Archivo maestrode artículosRegistrodel artículoDepartamentode control deinventarioAgregarregistro delcliente2 Nuevoregistrodel cliente Prepararestado decuentade envío4Registrodel pedidoD2 Archivo maestrode artículosProducirlistas deselección3Registrodel artículoNombre ydirección delclienteD1 Archivo maestrode clientesAlmacénEnviarpedido delcliente5 Artículos delpedidoEstado de cuentade envío delclienteNombre y dirección del clienteLista deselecciónde pedidoRegistrodel pedidoPendienteInformacióndel nuevoclienteRegistrodel clienteRegistrodel artículoRegistro de artículos pendientesDetalles del envíoLos procesos número 3 y 4son procesos en lote pero sedeben particionar en programasseparados, ya que se realizanen distintos momentos.El proceso 3 es un procesopor lotes, ya que tiene unasalida de computadora, laLista de selección de pedidoy una entrada de computadora(los tres archivos).Para indicar el particionamientohay que rodear los procesosincluidos en un solo programacon una línea punteada. Elcliente se agregaría al momentode colocar un pedido.ClienteFIGURA 7.20Particionamiento del diagrama deflujo de datos (se muestra partedel Diagrama 0).www.xlibros.com
CAPÍTULO 7 • USO DE DIAGRAMAS DE FLUJO DE DATOS 215ClienteBoleto-eConfirmación porcorreo electrónicoFechas ycódigos deaeropuertosFechas yaeropuertosPrecio ydisponibilidad delos vuelosSelecciónde vuelosDetalles de vuelosdisponiblesVuelo seleccionadoRechazo del créditoInformacióndel clienteSelección de asientosDetalles devuelosdisponiblesPantalla devuelosdisponiblesInformación de vuelo y asiento seleccionadosD1 VueloD3 Archivo maestrode clientesSeleccionarasientosdisponibles4D5 Reservación de vueloInformación detarjeta de créditoEstado del créditoConfirmacióndel créditoInformación detarjeta de créditoCompradel vueloInformación de vuelosInformaciónde vuelosReservación de vuelosRegistro del clienteSeleccionarvuelos3Reservarvuelo5Seleccionardías de vueloy aeropuertos1Mostrarvuelosdisponibles2Sistema detarjetas decrédito8Producirboleto-e delclienteHacer cargo ala tarjeta decrédito delcliente6Actualizarvuelos deaerolínea7AerolíneaAerolíneaD2 Detalles de vuelosClienteFIGURA 7.21El particionamiento esimportante para los sistemasbasados en Web, como lodemuestra este diagrama de flujode datos físico de un sistema decompra de boletos en línea.Otro de los motivos del particionamiento es para mantener la transacción segura. Una vez seleccionado elasiento, el cliente debe confirmar la reservación y suministrar la información de su tarjeta de crédito. Para ello seutiliza una conexión segura, a través de la cual la compañía de tarjetas de crédito se involucra en el proceso devalidación del monto de la compra. Para la conexión segura hay que usar un proceso separado. Una vez confir-mada la tarjeta de crédito es necesario incluir dos procesos adicionales: uno para dar formato a la confirmacióny enviarla por correo electrónico junto con un boleto-e para el cliente, y otro para enviar la notificación de lacompra del vuelo a la aerolínea.www.xlibros.com
216 PARTE III • EL PROCESO DE ANÁLISISO P O R T U N I D A D D E C O N S U L T O R Í A 7 . 1No hay negocio como el negocio de los flujosSuena el teléfono en la empresa Merman’s Costume Rentals;Annie Oaklea, jefa de inventario de vestuarios, toma la llamada; pararesponder a la consulta dice: “Permítame ver mis tarjetas de inven-tario. Lo siento: en inventario tenemos sólo dos trajes de oso machocon expresiones extra gruñonas. Hemos tenido mucha demanda deosos. ¿Para cuándo los necesita? Tal vez regresen uno. No, lo siento,no puedo. ¿Le gustaría que le enviara estos dos de todas maneras?¿El nombre de su establecimiento? ¿Compañía de teatro de Man-hattan? ¿Sucursal de Londres? Correcto. ¡Maravillosa compañía deteatro! En la tarjeta de su cuenta puedo ver que han rentado vestuariocon nosotros antes. ¿Cuánto tiempo los necesitará?”.La figura 7.C1 es un diagrama de flujo de datos que establecela etapa para procesar las rentas de vestuarios de Merman’s. Mues-tra rentas tales como la que Annie está preparando para la Compa-ñía de teatro de Manhattan.Después de conversar por unos instantes sobre la política dela tienda con respecto a las alteraciones, Annie concluye su con-versación diciendo: “Tienen mucha suerte de que los trajes de osoestén disponibles con tan poca anticipación. Tengo otra compañíaque los reservó para la primera semana de julio. Voy a prepararlesus trajes y nuestro mensajero se los llevará directamente. Unaúltima cosa: como siempre, la devolución oportuna de los trajesnos ahorrará enormes problemas a todos”.La empresa de renta de vestuarios de Merman se encuentraen el famoso distrito de teatros de la parte oeste de Londres.Cuando una compañía de producción de teatro o televisióncarece de los recursos (ya sea tiempo o experiencia) para cons-truir un vestuario en su propio taller, alguien grita: “¡Llamen aMerman’s!” y se procede a rentar lo necesario sin mucho es-cándalo.yAprobaciónde créditoInformación dedisponibilidadPedido Pedido válidoDireccióndel clienteDetallesdel pedidoDetalles del envíoInformaciónde envíoFacturade envíoProcesarfacturas deenvío3Recopilarenvío devestuariosde renta2Editarpedido1ClientesClientesD1 Vestuarios enel inventarioD2 Informacióndel clienteD3 Pedido delclienteFIGURA 7.C1Un diagrama de flujo de datos para la empresa Merman’s Costume Rentals.www.xlibros.com
CAPÍTULO 7 • USO DE DIAGRAMAS DE FLUJO DE DATOS 217Hay que particionar todo el procedimiento en una serie de procesos relacionados, cada uno de los cualesdebe tener su correspondiente página Web o interactuar con un sistema externo. Cada vez que se utiliza un nuevoalmacén de datos para obtener datos adicionales, hay que incluir un proceso para dar formato a los datos u obte-nerlos. Cada vez que se involucra una empresa o sistema externo, hay que particionar un proceso en un programaseparado. La tarea de revisar procesos o formularios no es primordial. El tamaño pequeño de los programas faci-lita su modificación. De esta forma el sitio Web será seguro, eficiente y más fácil de mantener.COMUNICACIÓN MEDIANTE EL USO DE DIAGRAMAS DE FLUJO DE DATOSLos diagramas de flujo de datos son útiles en todo el proceso de análisis y diseño. Hay que utilizar diagramasde flujo de datos originales sin expandir durante las primeras etapas del proceso, al averiguar los requeri-mientos de información. En esta etapa, los diagramas nos pueden ayudar a proveer las generalidades sobre elmovimiento de los datos a través del sistema, con lo cual obtendremos una perspectiva visual que no se puedeobtener a través de los datos de las narrativas.Un analista de sistemas podría ser bastante competente al realizar un bosquejo de toda la lógica del flujo continuode datos para los diagramas de flujo de datos, pero para que los diagramas sean verdaderamente comunicativos paralos usuarios y otros miembros del equipo del proyecto, también se requieren etiquetas significativas para todos loscomponentes de datos. Las etiquetas no deben ser genéricas debido a que no podrán indicar lo suficiente sobre la si-tuación existente en un momento dado. Todos los modelos de sistemas en general poseen la configuración de entrada,proceso y salida, por lo que las etiquetas para un diagrama de flujo de datos necesitan ser más específicas que eso.Por último debemos recordar que los diagramas de flujo de datos se utilizan para documentar el sistema.Hay que suponer que los diagramas de flujo de datos existirán mucho más tiempo que las personas que los dibu-jaron, lo que en definitiva siempre es verdad si un consultor externo es el que los dibuja. Se pueden utilizar losdiagramas de flujo de datos para documentar niveles altos o bajos de análisis y para ayudar a confirmar la lógicadetrás de los flujos de datos de las organizaciones.La tienda (que se puede visualizar mejor como un almacén)abarca tres pisos llenos de estantes de vestuarios que contienenmiles de disfraces colgados en conjunto por periodo histórico, paradespués agruparlos con base en el género y por último con base enla talla 1. La mayoría de las compañías de teatro pueden ubicar conprecisión lo que necesitan por medio de la hábil ayuda de Annie.Ahora cree a la medida la porción de devolución de renta deldiagrama de flujo de datos anterior. Recuerde que es imprescindibleque las entregas sean oportunas para el óptimo funcionamiento deMerman’s.1 Se dice que la empresa Western Costume Company en Hollywood, California,tiene más de 1 millón de vestuarios con un valor aproximado de $40 millones.RESUMENPara comprender mejor el movimiento lógico de los datos através de una empresa, el analista de sistemas dibuja diagramasde flujo de datos (DFD). Estos diagramas son herramientas es-tructuradas de análisis y diseño, las cuales permiten al analistacomprender el sistema y los subsistemas en forma visual, comoun conjunto de flujos de datos interrelacionados.Las representaciones gráficas del almacenamiento y la trans-formación del movimiento de los datos se dibujan mediante eluso de cuatro símbolos: un rectángulo redondeado para describirel procesamiento o las transformaciones de los datos, un cua-drado doble para mostrar una entidad de datos externa (origen oreceptor de los datos), una flecha para describir el flujo de datosy un rectángulo con un extremo abierto para mostrar un almacénde datos.El analista de sistemas extrae los procesos, orígenes, alma-cenes y flujos de datos de las narrativas o historias de la orga-nización que contaron los usuarios o que revelaron los datos,y utiliza una metodología arriba-abajo para dibujar primero undiagrama de flujo de datos a nivel de contexto del sistema conuna vista más amplia. Después se dibuja un diagrama de flujode datos lógico de nivel 0. Se muestran los procesos y se agre-gan los almacenes de datos. A continuación, el analista crea undiagrama hijo para cada uno de los procesos en el Diagrama 0.Las entradas y salidas permanecen constantes, pero los almace-nes de datos y los orígenes cambian. Al expandir el diagrama deflujo de datos original, el analista de sistemas se puede concen-trar en descripciones más detalladas del movimiento de datos enel sistema. Después, el analista desarrolla un diagrama de flujode datos físico a partir del diagrama de flujo de datos lógico y loparticiona para facilitar la programación. Se analiza cada procesopara determinar si debe ser manual o automatizado.Las seis consideraciones para particionar diagramas deflujo de datos son: 1) que distintos grupos de usuarios realicenlos procesos, 2) que los procesos se ejecuten en los mismostiempos, 3) que los procesos realicen tareas similares, 4) que sepuedan combinar procesos en lote para un procesamiento efi-ciente, 5) que se puedan combinar los procesos en un programapara lograr la consistencia de los datos, o 6) que los procesosse puedan particionar en distintos programas por cuestiones deseguridad.www.xlibros.com
218 PARTE III • EL PROCESO DE ANÁLISISEXPERIENCIA DE HYPERCASE® 7“U sted aborda de una manera muy interesante los pro-blemas que tenemos aquí en MRE. Lo he visto hacer bosque-jos de diagramas de nuestra operación casi desde el día enque entró. De verdad que me estoy acostumbrando a verlohacer garabatos. ¿Cómo se llaman ésos? Ah sí, diagramas anivel de contexto. ¿Y redes de flujos? Oh, no. Diagramas deflujo de datos. Sí, ¿verdad?”.Preguntas de HYPERCASE1. Busque los diagramas de flujo de datos que ya están dibujados enMRE. Haga una lista de los que encuentre y agregue una columnapara mostrar dónde los encontró dentro de la organización.2. Dibuje un diagrama a nivel de contexto para modelar el procesode Desarrollo del proyecto de la unidad de capacitación (TrainingUnit Project Development), uno que se base en las entrevistascon el personal relevante de la Unidad de capacitación. Despuésdibuje un diagrama de nivel 0 para detallar el proceso.FIGURA 7.EH1En HyperCase podemos hacer clic en los elementos de un diagrama de flujo de datos.PALABRAS CLAVE Y FRASESAjaxalmacén de datosalmacén de datos de transaccionesalmacén de datos físicobalanceo verticalcaso de usodesencadenador de eventodiagrama de flujo de datosdiagrama de flujo de datos a nivel de contextodiagrama de nivel 0diagrama hijoelemento baseelementos derivadosentidad externa (origen o destino)expandirflujo de datos de interfazfragmento de diagrama de flujo de datosfuncionalmente primitivolenguaje unificado de modelado (UML)metodología arriba-abajomodelado de eventosmodelo físicomodelo lógicoparticionamientowww.xlibros.com
CAPÍTULO 7 • USO DE DIAGRAMAS DE FLUJO DE DATOS 219PREGUNTAS DE REPASO1. ¿Cuál es uno de los principales métodos disponibles que el analista puede usar para analizar sistemas orientados a datos?2. ¿Cuáles son las cuatro ventajas de usar una metodología de flujo de datos en vez de las explicaciones narrativas delmovimiento de los datos?3. ¿Cuáles son los cuatro elementos de datos que se pueden simbolizar en los diagramas de flujo de datos?4. ¿Qué es un diagrama de flujo de datos a nivel de contexto? Compárelo con un DFD de nivel 0.5. Defina la metodología arriba-abajo y su relación con la acción de dibujar diagramas de flujo de datos.6. Describa qué significa “expandir” diagramas de flujo de datos.7. ¿Cuáles son las concesiones implicadas en el proceso de decidir cómo se deben expandir los flujos continuos de datos?8. ¿Por qué es tan importante etiquetar los diagramas de flujo de datos? ¿Qué pueden lograr las etiquetas efectivas en losdiagramas de flujo de datos para aquellos que no están familiarizados con el sistema?9. ¿Cuál es la diferencia entre los diagramas de flujo de datos físico y lógico?10. Mencione tres razones para crear un diagrama de flujo de datos lógico.11. Mencione cinco características que se incluyen en un diagrama de flujo de datos físico y que no se encuentran en undiagrama de flujo de datos lógico.12. ¿Cuándo se requieren los archivos de transacciones en el diseño del sistema?13. ¿Cómo se puede utilizar una tabla de eventos para crear un diagrama de flujo de datos?14. Mencione las principales secciones de un caso de uso.15. ¿Cómo se puede utilizar un caso de uso para crear un diagrama de flujo de datos?16. ¿Qué es el particionamiento y cómo se utiliza?17. ¿Cómo puede determinar un analista cuándo se requiere una interfaz?18. Mencione tres formas de determinar el particionamiento en un diagrama de flujo de datos.19. Mencione tres formas de usar los diagramas de flujo de datos completos.PROBLEMAS1. Hasta este punto parece tener una excelente relación de comunicación con Kevin Cahoon, el propietario de una empresade fabricación de instrumentos musicales. Cuando usted le mostró un conjunto de diagramas de flujo de datos quedibujó, él no pudo ver cómo estaba descrito en los diagramas el sistema representado.a. En un párrafo escriba en términos generales cómo podría explicar un diagrama de flujo de datos a un usuario.Asegúrese de incluir una lista de símbolos y su significado.b. Se requiere cierto esfuerzo para educar a los usuarios sobre los diagramas de flujo de datos. ¿Vale la penacompartirlos con los usuarios? ¿Por qué sí o por qué no? Defienda su respuesta en un párrafo.c. Compare los diagramas de flujo de datos con los casos de uso y los escenarios de los casos de uso. ¿Quémuestran los diagramas de flujo de datos que los diagramas de casos de uso tienen muchas dificultades paraexplicar?2. Su proyecto más reciente es combinar dos sistemas utilizados por la empresa Producers Financial. El sistemade aplicación de préstamos de Angie Schworer es bastante reciente, pero no tiene documentación. El sistema deadministración de préstamos de Scott Wittman es más antiguo, requiere de una buena revisión y los registros estáncodificados de manera independiente al otro sistema. El sistema de aplicación de préstamos acepta solicitudes, lasprocesa y recomienda los préstamos que se pueden aprobar. El sistema de administración de préstamos recibe lospréstamos que se aprobaron y les da seguimiento hasta su disposición final (pagado, vendido o moroso). Dibuje undiagrama de contexto y un diagrama de flujo de datos de nivel 1 que muestre cómo se vería un sistema combinadoidealizado.3. Una experiencia común que comparten todos los estudiantes en todos los colegios y universidades es la de inscribirse enun curso universitario.a. Dibuje un diagrama de flujo de datos de nivel 1 del movimiento de datos para inscribirse en un curso universitario.Use una sola hoja y etiquete cada elemento de datos con claridad.b. Expanda uno de los procesos en su diagrama de flujo de datos original en subprocesos; agregue flujos y almacenesde datos.c. Haga una lista de las partes del proceso de inscripción que estén “ocultas” para el observador externo y sobre lascuales haya tenido que hacer suposiciones para completar un diagrama de segundo nivel.4. La figura 7.EJ1 es un diagrama de flujo de datos de nivel 1 del movimiento de datos en una agencia de paseos por lascataratas del Niágara llamada Marilyn’s Tours. Léalo y revise cualquier inconsistencia.a. Haga una lista y enumere los errores que haya encontrado en el diagrama.b. Vuelva a dibujar y etiquetar el diagrama de flujo de datos de Marilyn’s para corregirlo. Asegúrese de que su nuevodiagrama emplee los símbolos en forma apropiada para reducir las repeticiones y duplicaciones en donde seaposible.proceso de transformaciónproceso en líneaproceso padreproceso primitivosistema orientado a datostabla de respuesta a eventoswww.xlibros.com
220 PARTE III • EL PROCESO DE ANÁLISISAGENTE DEVIAJESPRIVADOAGENTE DEVIAJES DEAEROLÍNEATURISTACON PAGOEN EFECTIVORevisarcréditoDeterminarpaseodeseadoHacerreser-vacionesTURISTACOSTO DE LOS PASEOSFOLLETOS DE VIAJESITINERARIO DE VIAJEHISTORIAL CREDITICIOD11 23D2D3D4TURISTACONTARJETA DECRÉDITOFIGURA 7.EJ1Bosquejo de un diagrama de flujode datos para Marilyn’s Tours.5. Perfect Pizza desea instalar un sistema para registrar los pedidos de pizzas y alitas de pollo. Cuando los clientesfrecuentes llaman a Perfect Pizza por teléfono, se les pide su número telefónico. Cuando se introduce el número en unacomputadora aparecen de manera automática el nombre, la dirección y la fecha del último pedido en la pantalla. Una vezque se toma el pedido se calcula el total, incluyendo impuestos y envío. Después se pasa el pedido al cocinero. Luego seimprime un recibo. Algunas veces se imprimen ofertas especiales, de manera que el cliente pueda obtener un descuento.Los repartidores que hacen las entregas dan a los clientes una copia del recibo y un cupón (si hace falta). Se mantienenlos totales semanales para compararlos con el desempeño del año anterior. Escriba un resumen de las actividades denegocios para tomar un pedido en Perfect Pizza.6. Dibuje un diagrama de flujo de datos a nivel de contexto para Perfect Pizza (problema 5).7. Expanda el diagrama a nivel de contexto en el problema 6 para mostrar todos los procesos importantes. Asigne a estediagrama el nombre Diagrama 0. Debe ser un diagrama de flujo de datos lógico.8. Dibuje un diagrama hijo lógico para el Diagrama 0 del problema 7, para el proceso que agrega un nuevo cliente si no seencuentra en la base de datos (que nunca haya pedido algo de Perfect Pizza antes).9. Dibuje un diagrama de flujo de datos físico para el problema 7.10. Dibuje un diagrama de flujo de datos físico para el problema 8.11. Particione el diagrama de flujo de datos físico en el problema 7; agrupe y separe los procesos según lo considereapropiado. Explique por qué particionó el diagrama de flujo de datos de esa manera (recuerde que no tiene queparticionar todo el diagrama completo, sólo las partes que considere necesario particionar).12. a. Dibuje un diagrama hijo lógico para el proceso 6 de la figura 7.17.b. Dibuje un diagrama hijo físico para el proceso 6 de la figura 7.17.13. Dibuje un diagrama de flujo de datos físico para el proceso 1.1 de la figura 7.18.14. Cree un diagrama de contexto para un agente de bienes raíces que trate de crear un sistema que relacione a loscompradores con las casas que se adapten mejor a sus requerimientos.15. Dibuje un diagrama de flujo de datos lógico que muestre los procesos generales para el problema 14. Asigne a estediagrama el nombre Diagrama 0.16. Cree un diagrama a nivel de contexto para facturar en un consultorio dental. Las entidades externas incluyen a lospacientes y las compañías de seguros.17. Dibuje un diagrama de flujo de datos lógico que muestre los procesos generales para el problema 16. Denomine a estediagrama Diagrama 0.18. Cree una tabla de respuestas a eventos para las actividades enlistadas para el sistema de procesamiento de pedidos deWorld’s Trend.19. Cree un caso de uso para la lista de siete procesos para el sistema de procesamiento de pedidos de World’s Trend.20. Cree una matriz CRUD para los archivos de World’s Trend.21. Use los principios del particionamiento para determinar cuáles procesos del problema 18 se deben incluir en programasseparados.www.xlibros.com
CAPÍTULO 7 • USO DE DIAGRAMAS DE FLUJO DE DATOS 22122. Cree un diagrama hijo de flujo de datos físico para la siguiente situación: el Grupo de usuarios de PC local sostienereuniones una vez al mes donde hay oradores informativos, premios de entrada y sesiones para grupos de interésespecial. Se lleva una computadora portátil a las reuniones, la cual se utiliza para agregar los nombres de los nuevosmiembros del grupo. El diagrama representa un proceso en línea y es el hijo del proceso 1, AGREGAR MIEMBROSNUEVOS. Se incluyen las siguientes tareas:a. Introducir la información del nuevo miembro.b. Validar la información. Los errores se muestran en pantalla.c. Cuando toda la información sea válida, aparecerá una pantalla de confirmación. El operador debe confirmar demanera visual que todos los datos son correctos y debe aceptar o cancelar la transacción.d. Las transacciones aceptadas agregan nuevos miembros al ARCHIVO MAESTRO DE MEMBRESÍAS, el cual seguarda en el disco duro de la computadora portátil.e. Las transacciones aceptadas se envían a un archivo DIARIO DE MEMBRESÍAS, el cual se guarda en un disco durosecundario.PROYECTOS EN GRUPO1. Reúnase con su grupo para desarrollar un diagrama de flujo de datos a nivel de contexto para Maverick Transport (quevimos por primera vez en el capítulo 4). Use los datos que haya generado posteriormente con su grupo sobre MaverickTransport. (Sugerencia: concéntrese en una de las áreas funcionales de la empresa, en vez de tratar de modelar toda laorganización).2. Use el diagrama a nivel de contexto que desarrolló en el problema 1 para desarrollar con su grupo un diagrama de flujode datos lógico de nivel 0 para Maverick Transport. Haga las suposiciones necesarias para dibujarlo. Elabore una lista deellas.3. Seleccione con su grupo un proceso clave y expándalo en un diagrama hijo lógico. Haga las suposiciones necesarias paradibujarlo. Elabore una lista de las preguntas de seguimiento y sugiera otros métodos para obtener más información sobrelos procesos que aún no le queden claros.4. Use el trabajo que haya realizado su grupo a la fecha para crear un diagrama de flujo de datos físico de una parte delnuevo sistema que piensa proponer a Maverick Transport.BIBLIOGRAFÍA SELECCIONADAAmbler, S. W. y L. L. Constantine (Eds.). The Unified Process Inception Phase: Best Practices for Implementing the Up.Lawrence, KS: CMP Books, 2000.Gane, C. y T. Sarson. Structured Systems Analysis and Design Tools and Techniques. Englewood Cliffs, NJ: Prentice Hall,1979.Hoffer, J. A., M. Prescott y H. Topi. Modern Database Management, 9ª. Edición. Upper Saddle River: Prentice Hall, 2009.Kotonya, G. e I. Sommerville. Requirements Engineering: Processes and Techniques. Nueva York: John Wiley & Sons, 1999.Lucas, H. Information Systems Concepts for Management, 3ª. Edición. Nueva York: McGraw-Hill, 1986.Martin, J. Strategic Data-Planning Methodologies. Englewood Cliffs, NJ: Prentice Hall, 1982.Thayer, R. H., M. Dorfman y D. Garr. Software Engineering: Vol. 1: The Development Process, 2ª. Edición. Nueva York: Wiley-IEEE Computer Society Press, 2002.www.xlibros.com
222 PARTE III • EL PROCESO DE ANÁLISISE P I S O D I O 7CASO DE LA CPUALLEN SCHMIDT, JULIE E. KENDALL Y KENNETH E. KENDALLSiguiendo el flujoDespués de recopilar y analizar los resultados de las entrevistas, cuestionarios y prototipos, Anna y Chip pasan a la siguiente etapa:modelar el sistema. Su estrategia es crear un conjunto en capas de diagramas de flujos de datos y después describir los componentes.Anna dice: “Vamos a agregar a los diagramas de flujo de datos lógicos actuales todos los requerimientos y característicasdeseadas del nuevo sistema. También podemos eliminar cualquiera de las características innecesarias que no se implementaríanen el nuevo sistema”.A continuación, Anna agrega al diagrama a nivel de contexto (que se muestra en el caso de la CPU en el capítulo 2)muchos de los informes, consultas y demás información que se incluirá en el nuevo sistema. En la figura E7.1 se muestra elSistema deinventario decomputadoras0ID de computadora eliminadaListado de instalaciones completadasInformación de modificaciónde computadoraMantenimientoAdministraciónAdministraciónInforme de instalacionesInformes administrativosRespuestas a consultasInforme de referenciascruzadas de softwareMantenimientoInformes de mantenimientoFormulario de nueva computadoraDepartamentode envío/recepciónSoportede oficinaListado de computadoras recibidasInformes detalladosConsultas de la administraciónConsulta de softwareCuerpodocenteCuerpodocenteRespuesta a una consultaUsuario desoftwareInforme de notificación de instalaciónFormulario de software recibidoListado de instalaciónFIGURA E7.1Diagrama de flujo de datos anivel de contexto del sistemapropuesto de inventario decomputadoras de la CPUwww.xlibros.com
CAPÍTULO 7 • USO DE DIAGRAMAS DE FLUJO DE DATOS 223diagrama a nivel de contexto terminado. Observe los múltiples flujos nuevos de datos. En el sistema propuesto, el personalde MANTENIMIENTO de computadoras recibirá los informes que no están disponibles en la actualidad. Por ejemplo, elinforme LISTADO DE INSTALACIÓN ayuda a automatizar la instalación de nuevas computadoras y otro informe adminis-trativo llamado INFORME DE REFERENCIAS CRUZADAS DE SOFTWARE muestra el software que se encuentra en cadamáquina.Anna continúa: “Vamos a expandir esto en el Diagrama 0 para el nuevo sistema. Será un diagrama de flujo de datos lógicodebido a que nos enfocaremos en las necesidades de la empresa. Tal vez sería mejor si trabajáramos en equipo para estediagrama”.Después de trabajar durante varias horas esa tarde y una buena parte de la mañana siguiente, completan el diagrama. Lorevisan y realizan pequeñas modificaciones. El Diagrama 0 terminado se muestra en la figura E7.2 y en la figura E7.3. ComoRegistro decomputadoraAgregarcomputadoranueva2D6 Pedidos de computadoraspendientesPedidopendienteDepartamentode envío/recepciónFormulario de nueva computadoraMantenimientoListado de instalaciónSoportede oficinaListado de computadoras recibidasAdministraciónInforme deinstalaciónInstalarcomputadora5Producirinformede referenciascruzadas dehardware/software9D4 Archivo maestrode computadorasNuevacomputadoraNuevosoftwareAgregarregistro desoftware1D5 Archivo maestro desoftwareRegistrode softwareLista deinstalaciónde softwareFormulario de softwarerecibido Departamentode envío/recepciónInstalarsoftware8Informe de notificaciónde instalaciónUsuario desoftwareD6 Pedidos de computadoraspendientesModificarcomputadora6MantenimientoListado deinstalacionescompletasInformación demodificaciónde computadoraActualización deinstalaciónComputadoramodificadaActualización deinstalaciónAdministraciónInforme de referenciascruzadas de softwareFIGURA E7.2Diagrama 0: Sistemapropuesto de inventariode computadoras de laCPU (parte 1).www.xlibros.com
224 PARTE III • EL PROCESO DE ANÁLISISes un diagrama lógico, no muestra ningún método físico de entrada de datos ni operaciones de validación; tampoco muestraalmacenes de datos temporales o archivos de transacciones. La sincronización no es un problema (un ejemplo es el procesoAGREGAR COMPUTADORA NUEVA, en donde parece que los pedidos se actualizan y los informes se producen al mismotiempo).“Por fin esto se ve bien”, reflexiona Chip. “Todos los procesos importantes, los flujos de datos y los almacenes de datosestán incluidos. Y el diagrama en general no se ve muy complicado”.“Fue útil colocar todas las consultas en un subsistema y todos los informes en otro. ¿Recuerdas lo complicado que era eldiagrama original?”, pregunta Anna.“Desde luego”, responde Chip. “Hasta llegué a pensar que estábamos tratando de abarcar mucho con este sistema. Por lomenos ahora es más manejable. Ya que lo terminamos, ¿cuál es el siguiente paso?”.“Necesitamos describir el Diagrama 0 con más detalle”, comenta Anna. “Para ello vamos a dibujar un diagrama denivel 1 para cada uno de los procesos en el Diagrama 0. Así como un padre puede tener muchos hijos, puede haber muchosdiagramas de nivel 1 para un diagrama específico de nivel 0. Por esta razón, muchos analistas los llaman diagramas padrese hijos”.“He estado trabajando en el Diagrama 1, una expansión del proceso 1 que se llama AGREGAR REGISTRO DE SOFT-WARE. Tal vez te gustaría revisar el resultado final”, comenta Anna. En la figura E7.4 se muestra este Diagrama 1.Chip y Anna utilizan Visible Analyst para verificar que la sintaxis del diagrama de flujo de datos sea correcta. VisibleAnalyst también comprobará el balance de los niveles entre los procesos del diagrama de flujo de datos y los diagramashijos.Eliminarcomputadora4ID decomputadoraeliminadaID de computadoraeliminadaInformesadministrativosRegistro de hardwareSubsistemade informes3Registro de softwareRegistro de softwareInformes demantenimientoInforme detallado7Subsistemade consultasRespuestas aconsultasConsultas de laadministraciónRegistro de hardwareConsulta desoftwareRespuestaa consultaMantenimientoSoportede oficinaAdministraciónCuerpodocenteD4 Archivo maestro decomputadorasD5 Archivo maestrode softwareD4 Archivo maestrode computadorasFIGURA E7.3Diagrama 0: Sistema propuesto deinventario de la CPU (parte 2).www.xlibros.com
CAPÍTULO 7 • USO DE DIAGRAMAS DE FLUJO DE DATOS 225Registrode softwareTeclearregistro desoftware1.1Formulario desoftware recibidoD5 Archivo maestrode softwareValidarregistro desoftware1.2Confirmarnuevosoftware1.3Software tecleadoSoftwareválidoCrear archivode registrosde software1.4Software confirmadoEntrada en elregistro desoftwareListado de instalaciónde softwareD7 Archivo de registrode softwareCrear listadode instalaciónde software1.6Entrada en elregistro desoftwareAgregarnuevoregistro desoftware1.5D5 Archivo maestrode softwareNuevosoftwareSoftware confirmadoFIGURA E7.4Diagrama 1: AGREGARREGISTRO DESOFTWARE del sistemacomputarizado propuestopara la CPU.EJERCICIOSE-1. Use Microsoft Visio o Visible Analyst para ver el diagrama a nivel de contexto para el sistema computarizado propuesto. Siutiliza Visible Analyst, experimente con los controles Zoom en la barra de herramientas inferior para cambiar de la vistaglobal a una vista detallada del diagrama. Haga doble clic en el proceso central para examinar la entrada en el repositoriopara éste. Haga clic en Exit para regresar al diagrama. Haga clic con el botón derecho en el proceso central para mostrar elmenú de objetos para el proceso central. Use la opción Explode para mostrar el Diagrama 0, el cual representa los detallesdel proceso central. Maximice la ventana y haga doble clic en algunos de los almacenes y flujos de datos para examinar susentradas en el repositorio. Haga clic en Exit para regresar al diagrama. Haga un acercamiento al 100 por ciento y desplácesepor la pantalla para ver las distintas regiones del diagrama; después imprima el diagrama usando una orientación panorá-mica. Haga clic en FILE, NEST y PARENT para regresar al diagrama a nivel de contexto. Maximice la ventana.E-2. Modifique el Diagrama 0 del sistema computarizado propuesto. Agregue el proceso 10, ACTUALIZAR REGISTRO DESOFTWARE. Tendrá que mover la entidad externa ADMINISTRACIÓN más abajo en el diagrama; colóquela a la iz-quierda del proceso 7, SUBSISTEMA DE CONSULTAS. Cree una entrada en el repositorio para el proceso y despuéshaga clic en Exit para regresar al diagrama. Imprima el diagrama usando una orientación panorámica.www.xlibros.com
226 PARTE III • EL PROCESO DE ANÁLISISEntrada: 1. DATOS DE MODIFICACIÓN DE SOFTWARE, de SOPORTE DE OFICINA2. ID DE ELIMINACIÓN DE SOFTWARE, de ADMINISTRACIÓNSalida: 1. REGISTRO DE SOFTWARE, una actualización del almacén de datos ARCHIVO MAESTRO DESOFTWAREE-3. Modifique el Diagrama 10, ACTUALIZAR REGISTRO DE SOFTWARE. Para conectarse al ARCHIVO MAESTRODE SOFTWARE use una flecha con doble punta (si utiliza Visible Analyst, haga clic con el botón derecho en el flujo dedatos, seleccione Change Item, después seleccione Change Type y Terminator Type, Double Filled). Imprima eldiagrama final.E-4. Modifique el diagrama 8, INSTALAR SOFTWARE. Agregue los siguientes procesos. Haga un acercamiento y desplá-cese por la pantalla; revise que su diagrama tenga una apariencia profesional. Imprima el resultado final.E-5. Modifique el Diagrama 6, MODIFICAR REGISTRO DE COMPUTADORA. Éste es un programa en línea para modifi-car la información de la computadora. Agregue los siguientes tres procesos. Cree entradas en el repositorio para cada unode los procesos, así como para el flujo de datos. Al terminar, haga un acercamiento al 100 por ciento y modifique lasflechas de flujo de datos que no estén derechas; además desplace las etiquetas de flujo de datos para obtener un gráficocon apariencia profesional. Imprima el diagrama; use la orientación panorámica.a. Proceso 6.6, VALIDAR MODIFICACIONES. Este proceso edita cada campo de modificación para verificar suvalidez. La entrada es CAMBIOS TECLEADOS. Los campos de salida son ERRORES DE MODIFICACIÓN (flujode interfaz) y MODIFICACIONES VÁLIDAS (al proceso 6.7).b. Proceso 6.7, CONFIRMAR MODIFICACIONES. Este proceso es una confirmación visual de las modificaciones.El operador tiene la oportunidad de rechazar las modificaciones o aceptarlas. La entrada es MODIFICACIONESVÁLIDAS. Los campos de salida son MODIFICACIONES RECHAZADAS (flujo de interfaz) y MODIFICA-CIONES CONFIRMADAS (al proceso 6.8).c. Proceso 6.8, REESCRIBIR ARCHIVO MAESTRO DE COMPUTADORAS. Este proceso reescribe el registro delARCHIVO MAESTRO DE COMPUTADORAS con las modificaciones realizadas al mismo. La entrada es MODI-FICACIONES CONFIRMADAS. El flujo de salida es el registro del ARCHIVO MAESTRO DE COMPUTADO-RAS, al almacén de datos ARCHIVO MAESTRO DE COMPUTADORAS.E-6. Cree el diagrama de flujo de datos hijo para el proceso 4, ELIMINAR COMPUTADORA. La siguiente tabla sintetiza laentrada, el proceso y la salida. Describa cada proceso y flujo de datos en el repositorio. Al terminar haga un acercamientoal 100 por ciento, mueva las líneas de flujo de datos que no estén alineadas en forma correcta, desplace las etiquetas deflujo de datos para obtener un gráfico con apariencia profesional e imprima el diagrama.Proceso: 8.2 INSTALAR SOFTWARE DE COMPUTADORAEntrada: 1. UBICACIÓN DE COMPUTADORA, del proceso 8,12. TÍTULO Y VERSIÓN DE SOFTWARE, del proceso 8.1Salida: 1. FORMULARIO DE SOFTWARE INSTALADOProceso: 8.3 CREAR TRANSACCIÓN DE SOFTWARE INSTALADOEntrada: 1. FORMULARIO DE SOFTWARE INSTALADOSalida: 1. TRANSACCIÓN DE SOFTWARE INSTALADO, al almacén de datos de SOFTWARE INSTALADOProceso: 8.4 ACTUALIZAR ARCHIVO MAESTRO DE SOFTWAREEntrada: 1. TRANSACCIÓN DE SOFTWARE INSTALADOSalida: 1. ARCHIVO MAESTRO DE SOFTWARE, actualizarProceso: 8.5 PRODUCIR NOTIFICACIÓN DE INSTALACIÓNEntrada: 1. TRANSACCIÓN DE SOFTWARE INSTALADO2. ARCHIVO MAESTRO DE SOFTWARE, del almacén de datos ARCHIVO MAESTRO DESOFTWARE3. ARCHIVO MAESTRO DE HARDWARE, del almacén de datos ARCHIVO MAESTRO DECOMPUTADORASSalida: 1. LISTADO DE NOTIFICACIÓN DE INSTALACIÓN, un flujo de interfazwww.xlibros.com
CAPÍTULO 7 • USO DE DIAGRAMAS DE FLUJO DE DATOS 227Los ejercicios en los que se antepone un icono www indican material de valor agregado disponible en el sitio Web www.pearsonhighered.com/kendall. Los estudiantes pueden descargar un archivo de muestra de Microsoft Visio, Visible Analyst, Microsoft Project o Microsoft Access quepueden usar para completar los ejercicios.Proceso: 4.1 TECLEAR ID DE ELIMINACIÓNDescripción: El ID de computadora se tecla en forma interactivaEntrada: 1. ID DE COMPUTADORA ELIMINADASalida: 1. ELIMINACIÓN TECLEADAProceso: 4.2 OBTENER REGISTRO DE COMPUTADORADescripción: Se lee el registro del ARCHIVO MAESTRO DE COMPUTADORAS para asegurar que existaEntrada: 1. ELIMINACIÓN TECLEADA (interfaz)2. REGISTRO DE COMPUTADORA, del almacén de datos ARCHIVO MAESTRO DECOMPUTADORASSalida: 1. ERROR: NO SE ENCONTRÓ (interfaz)2. REGISTRO DE COMPUTADORA VÁLIDOProceso: 4.3 CONFIRMAR ELIMINACIÓN DE COMPUTADORADescripción: La información de la computadora se muestra en la pantalla para que el operador confirme o rechacela eliminación.Entrada: 1. REGISTRO DE COMPUTADORA VÁLIDOSalida: 1. ELIMINACIÓN RECHAZADA (interfaz)2. ELIIMINACIÓN CONFIRMADAProceso: 4.4 ELIMINAR REGISTRO DE COMPUTADORADescripción: El registro de computadora se elimina en forma lógica (no física) del almacén de datos ARCHIVOMAESTRO DE COMPUTADORAS al reescribir el registro con una I de inactivo en el campoCódigo de registroEntrada: 1. ELIMINACIÓN CONFIRMADASalida: 1. COMPUTADORA ELIMINADA, una flecha con doble punta al almacén de datos ARCHIVOMAESTRO DE COMPUTADORAwww.xlibros.com
C A P Í T U L O 8Análisis de sistemas medianteel uso de diccionarios de datosOBJETIVOS DE APRENDIZAJEAl completar este capítulo usted podrá:1. Entender la manera en que los diccionarios de datos se emplean para analizar sistemasorientados a objetos.2. Crear entradas en el diccionario de datos para los procesos de datos, almacenes, flujosy estructuras, además de los elementos lógicos y físicos de los sistemas que seestudian, con base en los DFD.3. Comprender el concepto de un repositorio para la información de los proyectos de losanalistas y el rol de las herramientas CASE en cuanto a su creación.4. Reconocer las funciones de los diccionarios de datos para ayudar a los usuarios aactualizar y dar mantenimiento a los sistemas de información.Después de elaborar correctamente diagramas de flujo de datos de variosniveles, los analistas los emplean para clasificar los procesos de datos,flujos, almacenes, estructuras y elementos en un diccionario de datos. Departicular importancia son los nombres que se utilizan para caracterizar loselementos de datos: el analista encargado de la denominación de los com-ponentes de los sistemas orientados a datos debe esforzarse para que elnombre sea significativo y exclusivo. En este capítulo veremos el diccionario de datos, otrométodo para ayudar en el análisis de los sistemas orientados a datos.EL DICCIONARIO DE DATOSEl diccionario de datos es una versión especializada de los diccionarios que se utilizan comoreferencias en la vida cotidiana. El diccionario de datos es una obra de consulta de informaciónsobre los datos (es decir, metadatos); es compilado por los analistas de sistemas para guiarsea través del análisis y diseño. Como documento, el diccionario de datos recopila y coordinatérminos de datos específicos, además de confirmar lo que significa cada término para distintaspersonas en la organización. Los diagramas de flujo de datos que vimos en el capítulo 7 son unexcelente punto de partida para recolectar entradas para el diccionario de datos.Una razón importante para tener un diccionario es con el fin de mantener limpios los datos;es decir, para conservarlos consistentes. Si usted almacena datos sobre el sexo de un hombrecomo “M” en un registro, “Masculino” en un segundo registro y como el número “1” en un tercerregistro, los datos no están “limpios”. En este aspecto el diccionario de datos le será muy útil.Los diccionarios de datos automatizados (parte de las herramientas CASE que menciona-mos antes) son valiosos por su capacidad de realizar referencias cruzadas con los elementos dedatos para permitir los cambios necesarios en todos los programas que compartan un elementocomún. Gracias a esta característica ya no hay necesidad de modificar los programas al azar niesperar hasta que el programa no se ejecute debido a un cambio que no se implementó en todoslos programas que compartan el elemento actualizado. Es evidente que los diccionarios de datosautomatizados son importantes para los sistemas extensos que producen varios miles de elemen-tos de datos para clasificarlos y usarlos en referencias cruzadas.228www.xlibros.com
CAPÍTULO 8 • ANÁLISIS DE SISTEMAS MEDIANTE EL USO DE DICCIONARIOS DE DATOS 229Necesidad de comprender el diccionario de datosEn la actualidad, muchos sistemas de administración de bases de datos vienen equipados con un diccionario dedatos automatizado. Estos diccionarios pueden ser elaborados o simples. Algunos diccionarios de datos compu-tarizados clasifican de manera automática los elementos de datos al momento de llevar a cabo la programación;otros simplemente proveen una plantilla en la que se pide a la persona que llena el diccionario clasificar todas lasentradas de una manera uniforme.A pesar de la existencia de los diccionarios de datos automatizados, las cuestiones que siguen siendo per-tinentes para el analista de sistemas durante el esfuerzo de sistemas son comprender qué datos componen undiccionario de datos, las convenciones utilizadas en los diccionarios de datos y la forma en que se desarrollaun diccionario de datos. Al comprender el proceso de compilar un diccionario de datos, el analista de sistemaspuede conceptualizar con más facilidad el sistema y la forma en que funciona. En las siguientes secciones permi-tiremos al analista ver el razonamiento detrás de lo que existe en los diccionarios de datos automatizados.Además de proveer documentación y eliminar la redundancia, podemos usar el diccionario de datos para:1. Validar la integridad y precisión del diagrama de flujo de datos.2. Proveer un punto de partida para desarrollar pantallas e informes.3. Determinar el contenido de los datos almacenados en archivos.4. Desarrollar la lógica para los procesos del diagrama de flujo de datos.5. Crear XML (lenguaje de marcado extensible).EL REPOSITORIO DE DATOSAunque el diccionario de datos contiene información sobre los datos y procedimientos, hay una colección másgrande de información sobre el proyecto: el repositorio. El concepto de repositorio es uno de las muchas implica-ciones de las herramientas CASE y puede contener lo siguiente:1. Información sobre los datos que mantiene el sistema, incluyendo flujos de datos, almacenes de datos,estructuras de registros, elementos, entidades y mensajes.2. Lógica de procedimiento y casos de uso.3. Diseño de pantallas e informes.4. Relaciones de datos, como la forma en que una estructura de datos está vinculada con otra.5. Requerimientos del proyecto y entregables finales del sistema.6. Información administrativa del proyecto, como calendarios de entrega, logros, cuestiones que hay queresolver y usuarios del proyecto.Para crear el diccionario de datos hay que examinar y describir el contenido de los flujos de datos, los almacenes dedatos y los procesos, como se muestra en la figura 8.1. Hay que definir cada almacén y flujo de datos, para des-pués expandirlo de manera que incluya los detalles de los elementos que contiene. Debemos describir la lógicaDiagrama de flujo de datosAlmacén de datosFlujo de datosDiccionario de datosFormulario dedescripciónde flujodatosXXXEstructurade datosXXXFormulariode descripciónde almacénde datosXXXElementosde datosXXXEstructurade datosXXXElementosde datosXXXFIGURA 8.1Cómo se relacionan los diccionarios de datos con los diagramas de flujo de datos.www.xlibros.com
230 PARTE III • EL PROCESO DE ANÁLISISde cada proceso mediante el uso de los datos que entran o salen del proceso. Hay que identificar y resolver lasomisiones y otros errores de diseño.Hay que desarrollar las cuatro categorías del diccionario de datos (flujos de datos, estructuras de datos, ele-mentos de datos y almacenes de datos) para promover la comprensión de los datos del sistema. En el capítulo 9presentaremos la lógica de procedimiento, en el capítulo 13 hablaremos sobre las entidades y los capítulos 2 y 10corresponden a los mensajes y casos de uso.Para ilustrar la forma en que se crean las entradas en el diccionario de datos, vamos a usar un ejemplo parala División de catálogos de World’s Trend. Esta empresa vende ropa y otros artículos por correo mediante el usode un sistema de pedidos vía telefónica (el formulario de pedido por correo también se puede enviar vía fax), ya través de Internet por medio de formularios Web personalizados. Sin importar dónde se origine el pedido, losdatos subyacentes capturados por el sistema son iguales para los tres métodos.El formulario de pedido de World’s Trend que se muestra en la figura 8.2 proporciona algunas pistas sobrelo que se debe introducir en un diccionario de datos. En primer lugar hay que capturar y almacenar nombre, di-rección y número telefónico de la persona que está haciendo el pedido. Después hay que tratar con los detallesdel pedido: la descripción del artículo, el tamaño, color, precio, cantidad, etcétera. También hay que determinarel método de pago del cliente. Una vez hecho todo esto, podemos guardar estos datos para usarlos en el futuro.Usaremos este ejemplo en todo el capítulo para ilustrar cada una de las partes del diccionario de datos.Definición de los flujos de datosPor lo general, se define primero los flujos de datos. Las entradas y salidas del sistema se determinan a partirde las entrevistas, de observar a los usuarios y analizar los documentos además de otros sistemas existentes.Podemos sintetizar la información que se captura para cada flujo de datos mediante el uso de un formulario quecontenga la siguiente información:1. ID, un número de identificación opcional. Algunas veces el ID se codifica mediante un esquema paraidentificar al sistema y la aplicación en el mismo.2. Un nombre descriptivo único para este flujo de datos. Este nombre es el texto que debe aparecer en eldiagrama y se debe referenciar en todas las descripciones que utilicen el flujo de datos.3. Una descripción general del flujo de datos.4. El origen del flujo de datos. Este origen puede ser una entidad externa, un proceso o un flujo de datos queprovenga de un almacén de datos.5. El destino del flujo de datos (los mismos elementos enlistados bajo el origen).6. Una indicación para determinar si el flujo de datos es un registro que entra o sale de un archivo, o un registroque contiene un informe, formulario o pantalla. Si el flujo de datos contiene información que se utiliza entreprocesos, se designa como interno.7. El nombre de la estructura de datos que describe a los elementos que se encuentran en este flujo de datos.Para un flujo de datos simple, podrían ser uno o varios elementos.8. El volumen por unidad de tiempo. Los datos podrían ser registros por día o cualquier otra unidad de tiempo.9. Un área para comentarios adicionales y anotaciones sobre el flujo de datos.FIGURA 8.2Un pedido en línea de la Divisiónde catálogos de World’s Trend.www.xlibros.com
CAPÍTULO 8 • ANÁLISIS DE SISTEMAS MEDIANTE EL USO DE DICCIONARIOS DE DATOS 231Una vez más podemos usar nuestro ejemplo de la División de catálogos de World’s Trend del capítulo 7 parailustrar un formulario completo. La figura 8.3 es un ejemplo de la descripción del flujo de datos que representala pantalla utilizada para agregar un nuevo PEDIDO DEL CLIENTE y para actualizar los archivos de clientes yartículos. Cabe mencionar que la entidad externa CLIENTE es el origen y que PROCESO 1 es el destino, queprovee un vínculo de vuelta al diagrama de flujo de datos. La casilla marcada como “Pantalla” indica que el flujorepresenta una pantalla de entrada. Podría ser cualquier pantalla, como una página Web, una interfaz gráfica deusuario (GUI), un teléfono celular o tal vez una pantalla de mainframe. La descripción detallada del flujo de datospodría aparecer en este formulario, o se podría representar como una estructura de datos.Hay que describir primero los flujos de datos para todas las entradas y salidas, ya que por lo general repre-sentan la interfaz humana; después, los flujos de datos intermedios y los flujos de datos que entran y salen de losalmacenes de datos. Para describir los detalles de cada flujo de datos usamos elementos (a los que algunas vecesse les denomina campos), una estructura de datos o un grupo de elementos.Podemos describir un flujo de datos simple mediante el uso de un solo elemento, como el número de clienteque utiliza un programa de consulta para buscar el correspondiente registro de cliente.Descripción de las estructuras de datosPor lo general, para describir las estructuras de datos utilizamos la notación algebraica. Este método permite alanalista producir una vista de los elementos que forman la estructura de datos, junto con la información sobre losmismos. Por ejemplo, el analista indicará si hay muchos elementos iguales en la estructura de datos (un gruporepetitivo) o si pueden existir dos elementos mutuamente excluyentes de cada uno de los otros elementos. Lanotación algebraica utiliza los siguientes símbolos:1. Un signo de igual () significa “está compuesto de”.2. Un signo positivo () significa “y”.3. Las llaves { } indican elementos repetitivos, también conocidos como grupos repetitivos o tablas repetitivas.Puede haber un elemento repetitivo o varios de ellos en el grupo. El grupo repetitivo puede tenercondiciones, como un número fijo de repeticiones, o límites superiores e inferiores para el número derepeticiones.Cliente Proceso 1Pedido del clienteContiene la información del pedido de un cliente y se utiliza paraactualizar el archivo maestro del cliente y al archivo de artículos; además seusa para producir un registro de pedido.IDNombreDescripciónDescripción de flujo de datosComentariosOrigen DestinoTipo de flujo de datosArchivo Pantalla Informe Formulario InternoEstructura de datos que viaja con el flujo Volumen/TiempoInformación del pedido 10/horaInformación del registro de pedido para un pedido del cliente.El pedido se puede recibir a través de Web, por correo electrónico o FAX.También es posible que el cliente llame por teléfono directamente aldepartamento de procesamiento de pedidos.FIGURA 8.3Ejemplo de estructura de datospara agregar el pedido de uncliente en la División de catálogosde World’s Trend.www.xlibros.com
232 PARTE III • EL PROCESO DE ANÁLISIS4. Los corchetes [ ] representan una situación del tipo cualquiera/o (either/or). Puede estar presente cualquierelemento u otro, pero no ambos. Los elementos que se enlistan entre corchetes son mutuamente excluyentes.5. Los paréntesis ( ) representan un elemento opcional. Los elementos opcionales se pueden dejar en blanco enlas pantallas de entrada de datos y pueden contener espacios o ceros para los campos numéricos en lasestructuras de archivos.La figura 8.4 es un ejemplo de la estructura de datos para agregar el pedido de un cliente en la División de catálogosde World’s Trend. Cada pantalla CLIENTE NUEVO consiste en las entradas que se encuentran del lado derecho delos signos de igual. Algunas de las entradas son elementos, pero otras, como NOMBRE DEL CLIENTE, DIREC-CIÓN y TELÉFONO, son grupos de elementos o registros estructurales. Por ejemplo, NOMBRE DEL CLIENTEestá compuesto por PRIMER NOMBRE, INICIAL SEGUNDO NOMBRE y APELLIDO PATERNO. Hay quedefinir cada registro estructural de una manera más detallada hasta que todo el conjunto se descomponga en sus ele-mentos básicos. Cabe mencionar que, después de la definición para la pantalla PEDIDO DEL CLIENTE, están lasdefiniciones para cada registro estructural. Incluso un campo tan simple como NÚMERO TELEFÓNICO se definecomo una estructura para que el código de área se pueda procesar por separado.Pedido del cliente = Número del cliente +Nombre del cliente +Dirección +Teléfono +Número de catálogo +Fecha del pedido +(Artículos del pedido disponibles) +Total de mercancía +(Impuestos) +Envío y manejo +Total del pedido +Método de pago +(Tipo de tarjeta de crédito) +(Número de tarjeta de crédito) +(Fecha de expiración)Nombre del cliente = Primer nombre +(Inicial segundo nombre) +Apellido paternoDirección = Calle +(Departamento) +Ciudad +Estado +CP +(Expansión CP) +(País)Teléfono = Código de área +Número localArtículos del pedidodisponibles =Cantidad ordenada +Número de artículo +Descripción de artículo +Tamaño +Color +Precio +Total de artículoMétodo de pago = [Cheque | Crédito | Giro postal]Tipo de tarjeta decrédito =[World’s Trend | American Express | MasterCard | Visa]FIGURA 8.4Ejemplo de estructura de datospara agregar el pedido de uncliente en la División de catálogosde World’s Trend.www.xlibros.com
CAPÍTULO 8 • ANÁLISIS DE SISTEMAS MEDIANTE EL USO DE DICCIONARIOS DE DATOS 233Los registros estructurales y elementos que se utilizan en muchos sistemas reciben un nombre específico queno es del sistema como calle, ciudad y código postal, lo cual no refleja el área funcional en la que se utilizan.Este método permite al analista definir estos registros una vez y usarlos en muchas aplicaciones. Por ejemplo,una ciudad puede ser la ciudad de un cliente, un proveedor o un empleado. Observe el uso de los paréntesis paraindicar que (INICIAL SEGUNDO NOMBRE), (DEPARTAMENTO) y (EXPANSIÓN CP) son información op-cional de PEDIDO (pero no más de uno). Para indicar la condición O hay que encerrar las opciones en corchetesy separarlas con el símbolo .Estructuras de datos lógicas y físicasCuando se definen las estructuras de datos por primera vez, se incluyen sólo los elementos de datos que elusuario puede ver, como nombre, dirección y saldo actual. Esta etapa es el diseño lógico que muestra lo que laempresa necesita para sus operaciones diarias. Como aprendimos de la HCI, es importante que el diseño lógicorefleje con precisión el modelo mental de la forma en que el usuario ve el sistema. Al utilizar el diseño lógico comobase, el analista puede diseñar las estructuras de datos físicas, que incluyen los elementos adicionales necesariospara implementar el sistema. Los siguientes son ejemplos de elementos de diseño físicos:1. Los campos clave que se utilizan para localizar registros en la tabla de una base de datos. Un ejemplo es unnúmero de artículo, que la empresa no necesita para operar pero es necesario para definir y localizar losregistros de computadora.2. Los códigos para identificar el estado de los registros maestros, como si un empleado está activo (si trabajaen la actualidad) o inactivo. Podemos mantener dichos códigos en archivos que produzcan informaciónfiscal.3. Los códigos de transacción se utilizan para identificar los tipos de registros cuando un archivo contienedistintos tipos de éstos. Un ejemplo es un archivo de créditos que contiene registros para los artículosdevueltos, así como registros de pagos.4. Las entradas de grupos repetitivos que contienen el conteo de los elementos en el grupo.5. Los límites en cuanto al número de elementos en un grupo repetido.6. La contraseña que utiliza un cliente para acceder a un sitio Web seguro.La figura 8.5 es un ejemplo de la estructura de datos para un ESTADO DE CUENTA DE FACTURACIÓNDE CLIENTE y muestra que la LÍNEA DE PEDIDO es tanto un elemento repetitivo como un registro estructu-ral. Los límites de LÍNEA DE PEDIDO son del 1 al 5 para indicar que el cliente puede ordenar de uno a cincoartículos en esta pantalla. Los artículos adicionales aparecerán en pedidos subsiguientes.La notación de grupo repetitivo puede tener varios formatos adicionales. Si el grupo se repite un númerofijo de veces, ese número se coloca a un lado de la llave de apertura, como en 12 {Ventas mensuales}, dondesiempre hay 12 meses en el año. Si no se indica un número, el grupo se repite en forma indefinida. Un ejem-plo es una tabla que contiene un número indefinido de registros, como Tabla maestra de clientes = {Registrosde clientes}.El número de entradas en los grupos repetitivos también puede depender de una condición, como una en-trada en el Registro maestro de clientes por cada artículo ordenado. Esta condición se podría guardar en el dic-cionario de datos como {Artículos comprados} 5, donde 5 es el número de artículos.Estado de cuenta defacturación de cliente =Fecha actual +Número de cliente +Nombre del cliente +Dirección +{Línea de pedido} +(Monto de pago anterior) +Total monto deudor +(Comentario)Línea de pedido = Número de pedido +Fecha de pedido +Total del pedido51FIGURA 8.5Elementos físicos agregados a unaestructura de datos.www.xlibros.com
234 PARTE III • EL PROCESO DE ANÁLISISElementos de datosCada elemento de datos se debe definir una vez en el diccionario de datos y también se puede introducir previa-mente en el formulario de descripción de un elemento, como el que se muestra en la figura 8.6. Las característi-cas que se incluyen comúnmente en el formulario de descripción de elemento son:1. ID de elemento. Esta entrada opcional permite al analista crear entradas automatizadas en el diccionario dedatos.2. El nombre del elemento. El nombre debe ser descriptivo, único y basado en la manera común en que lamayoría de los programas o el usuario principal llamen a ese elemento.3. Los alias, que son sinónimos u otros nombres para el elemento. Los alias son nombres que utilizan distintosusuarios en distintos sistemas. Por ejemplo, un NÚMERO DE CLIENTE también se puede llamarNÚMERO DE CUENTA POR COBRAR o NÚMERO DE CONSUMIDOR.4. Una descripción corta del elemento.5. Si el elemento es base o derivado. Un elemento base es el que se teclea al sistema en un principio, como elnombre de un cliente, la dirección o ciudad. Los elementos base se deben almacenar en archivos. Loselementos derivados se crean a través de los procesos como resultado de un cálculo o una serie deinstrucciones de toma de decisiones.6. La longitud de un elemento. Algunos elementos tienen longitudes estándar. Por ejemplo, en los EstadosUnidos todas las longitudes para las abreviaturas de los nombres de estados, códigos postales y númerostelefónicos son iguales. Para otros elementos, las longitudes pueden variar, por lo que el analista y laNúmero de clienteNúmero de consumidorNúmero de cuenta por cobrarIdentifica en forma única a un cliente que haya realizado unatransacción de negocios durante los últimos cinco años.IDNombreAliasAliasDescripciónFormulario de descripción de elementoLongitud Punto dec. AlfabéticoFormato de entrada AlfanuméricoFormato de salida FechaValor predeterminado NuméricoContinuo o Discreto Base o DerivadoComentariosCaracterísticas del elemento69 (6)9 (6)Criterios de validaciónContinuoLímitesuperiorLímiteinferior<999999>0DiscretoValor SignificadoEl número de cliente debe pasar una prueba de dígito de verificaciónmódulo-11. Es derivado debido a que es generado por computadora y seagrega un dígito de verificación.FIGURA 8.6La descripción de un elementode la División de catálogos deWorld’s Trend.www.xlibros.com
CAPÍTULO 8 • ANÁLISIS DE SISTEMAS MEDIANTE EL USO DE DICCIONARIOS DE DATOS 235comunidad de usuarios deben decidir en conjunto sobre la longitud final con base en las siguientesconsideraciones:a. Para determinar las longitudes de cantidades numéricas hay que averiguar el número más grande quepuede llegar a contener esa cantidad y después permitir un espacio razonable de expansión.b. Los campos de nombres y direcciones pueden recibir longitudes con base en la siguiente tabla. Porejemplo, el campo de un apellido de 11 caracteres puede alojar al 98 por ciento de los apellidos paternosen los Estados Unidos.c. Para otros campos, a menudo es conveniente examinar o sacar una muestra de los datos históricos que seencuentran en la organización para determinar una longitud de campo apropiada.Si el elemento es demasiado pequeño, se truncarán los datos que se introduzcan. El analista debe decidircómo afectará eso a las salidas del sistema. Por ejemplo, si se trunca el apellido paterno de un cliente, detodas formas se entregaría el correo; pero si se trunca la dirección de correo electrónico, se devolverá comono encontrado.7. El tipo de datos: numérico, fecha, alfabético, carácter variable (varchar) o carácter, que algunas veces sedenomina alfanumérico o datos de texto. Los datos de caracteres variables (varchar) pueden contenercualquier número de caracteres, hasta un límite establecido por el software de base de datos. Al usarcaracteres variables es opcional especificar la longitud. En la figura 8.7 se muestran varios de estosformatos. Los campos de caracteres pueden contener una mezcla de letras, números y caracteres especiales.Si el elemento es una fecha, hay que determinar su formato (por ejemplo, MMDDAAAA). Si el elemento esnumérico, hay que determinar su tipo de almacenamiento.Los formatos de computadora personal, como moneda, número o científico, dependen de la forma enque se vayan a utilizar los datos. Los formatos de números se pueden clasificar como entero, entero largo,precisión simple, precisión doble, etcétera. Hay muchos otros tipos de formatos utilizados con los sistemasTipo de datosBit Un valor de 1 o 0, un valor de verdadero/falsoChar, varchar, text Cualquier carácter alfanuméricoDatetime, smalldatetime Datos alfanuméricos, varios formatosDecimal, numérico Datos numéricos con precisión hasta el dígito menossignificativo; pueden contener una porción entera yuna porción decimalFloat, real Valores de punto flotante que contienen un valordecimal aproximadoInt, smallint, tinyint Sólo datos enteros (dígitos completos)Binary, varbinary, image Cadenas binarias (sonido, imágenes, video)Cursor, timestamp, uniqueidentifier Un valor que siempre es único dentro de una base de datosAutonumber Un número que siempre se incrementa en uno cuando seagrega un registro a una tabla de base de datosCurrency, money, smallmoney Números monetarios con precisión de cuatro lugares decimalesSignificado FIGURA 8.7Algunos ejemplos de formatos dedatos utilizados en sistemas de PC.Campo Longitud Porcentaje de datos que podráncaber (EE.UU.)Apellido paterno 11 98Primer nombre 18 95Nombre de empresa 20 95Calle 18 90Ciudad 17 99www.xlibros.com
236 PARTE III • EL PROCESO DE ANÁLISISCarácter de formato SignificadoPuede introducir o visualizar/imprimir cualquier carácterSe pueden introducir o visualizar sólo númerosVisualiza los ceros a la izquierda como espaciosInserta comas al visualizar númerosInserta un punto al visualizar un númeroInserta barras diagonales al visualizar un númeroInserta un guión corto al visualizar un númeroIndica una posición decimal (cuando no se incluye el punto decimal)X9Z,·/-VFIGURA 8.8Códigos de formato de caracteres.de PC. Unicode es un sistema de codificación estandarizado para definir símbolos gráficos, como loscaracteres chinos o japoneses. En un capítulo posterior describiremos Unicode con más detalle. Hay tresformatos estándar para computadoras mainframe: decimal por zonas, decimal empaquetado y binario. Elformato decimal por zonas se utiliza para imprimir y visualizar datos. El formato decimal empaquetado seutiliza comúnmente para ahorrar espacio en las distribuciones de los archivos y para elementos querequieren un alto nivel de operaciones aritméticas. El formato binario es adecuado para los mismos fines queel formato decimal empaquetado, pero se utiliza con menos frecuencia.8. Hay que incluir los formatos de entrada y salida mediante el uso de símbolos de codificación especiales paraindicar cómo se deben presentar los datos. En la figura 8.8 se muestran estos símbolos y sus usos. Cadasímbolo representa un carácter o dígito. Si se repite el mismo carácter varias veces, el carácter seguido de unnúmero entre paréntesis para indicar cuántas veces se repite el número se sustituye por el grupo. Porejemplo, XXXXXXXX se representaría como X(8).9. Los criterios de validación para asegurar que el sistema capture datos precisos. Los elementos pueden serdiscretos para indicar que tienen ciertos valores fijos, o continuos con un rango uniforme de valores. He aquílos criterios comunes de edición:a. Un rango de valores es apropiado para los elementos que contienen datos continuos. Por ejemplo, enEstados Unidos, un promedio de puntos de calificación para un estudiante puede ser del 0.00 al 4.00. Sisólo hay un límite superior o inferior para los datos, se utiliza un límite en vez de un rango.b. Se indica una lista de valores si los datos son discretos. Algunos ejemplos son los códigos querepresentan los colores de los artículos que se venden en el catálogo de World’s Trend.c. Una tabla de códigos es apropiada si la lista de valores es extensa (por ejemplo, abreviaciones deestados, códigos telefónicos de países o códigos de área de teléfonos en los EE.UU.).d. Para elementos clave o índice, a menudo se incluye un dígito de verificación.10. Cualquier valor predeterminado que pueda tener el elemento. El valor predeterminado se muestra en laspantallas de entrada y se utiliza para reducir la cantidad de información que tenga que teclear el operador.Por lo general, varios campos en cada sistema tienen valores predeterminados. Cuando se emplean listas deGUI o listas desplegables, el valor predeterminado es el que ya está seleccionado y resaltado. Al usarbotones de opción, está seleccionada la opción para el valor predeterminado, y al usar casillas deverificación, el valor predeterminado (“sí” o “no”) determina si la casilla de verificación tendrá o no unamarca inicial en ella.11. Un área adicional para comentarios. Ésta se podría usar para indicar el formato de la fecha, la validaciónespecial requerida, el método de dígito de verificación utilizado (lo cual explicaremos en el capítulo 15),etcétera.Tal vez las descripciones de los elementos de datos como NÚMERO DE CLIENTE se llamen NÚMERO DECONSUMIDOR en cualquier otra parte del sistema (es probable que debamos actualizar el código anterior es-crito con este alias).El elemento alfabético es otro tipo de elemento de datos. En la División de catálogos de World’s Trend, loscódigos se utilizan para describir colores: por ejemplo, BL para azul, WH para blanco y GR para verde. Al im-plementar este elemento se necesitará una tabla para que los usuarios busquen los significados de estos códigos(en el capítulo 15 hablaremos con más detalle sobre la codificación).Almacenes de datosTodos los elementos base deben estar guardados en el sistema. Los elementos derivados, como el sueldo brutodel empleado del año a la fecha, también se pueden guardar en el sistema. Se crean almacenes de datos para cadaentidad de datos distinta que se piense guardar. Es decir, cuando se agrupan los elementos base del flujo de datospara formar un registro estructural, se crea un almacén de datos para cada registro estructural único.www.xlibros.com
CAPÍTULO 8 • ANÁLISIS DE SISTEMAS MEDIANTE EL USO DE DICCIONARIOS DE DATOS 237Como tal vez un flujo de datos muestre sólo parte de los datos colectivos que contenga un registro estructu-ral, tal vez tenga que examinar muchas estructuras de flujo de datos para obtener una descripción completa de unalmacén de datos.La figura 8.9 es el formulario común que se utiliza para describir un almacén de datos. La información quese incluye en el formulario es la siguiente:1. El ID del almacén de datos. A menudo el ID es una entrada obligatoria para evitar que el analista guardeinformación redundante. Un ejemplo sería D1 para el ARCHIVO MAESTRO DE CLIENTES.2. El nombre del almacén de datos, que es descriptivo y único.3. Un alias para la tabla, como ARCHIVO MAESTRO DE CONSUMIDORES para el ARCHIVO MAESTRODE CLIENTES.4. Una descripción corta del almacén de datos.5. El tipo de archivo, ya sea de computadora o manual.6. El formato designa si el archivo es una tabla de base de datos o si tiene el formato de un simple archivoplano (en el capítulo 13 describiremos con detalle los formatos de archivos).7. El número máximo y promedio de registros en el archivo, así como el crecimiento por año. Esta informaciónayuda al analista a predecir la cantidad de espacio en disco requerida para la aplicación; además es necesariopara planear la adquisición de hardware.8. El nombre del archivo o conjunto de datos especifica el nombre del archivo, si se conoce. En las etapas dediseño iniciales, podemos dejar este elemento en blanco. En la figura 8.10 se muestra un formularioelectrónico producido mediante el uso de Visible Analyst. Este ejemplo muestra que ARCHIVO MAESTRODE CLIENTES (CUSTOMER MASTER) se almacena en una computadora en la forma de una base deTipo de archivo Computadora ManualFormato de archivo Base de datos Indexado Secuencial DirectoTamaño del registro (caracteres): Tamaño de bloque:Número de registros: Máximo Promedio:Porcentaje de crecimiento anual: %D 1Archivo maestro de clientesArchivo maestro de consumidoresContiene un registro para cada cliente.IDNombreAliasDescripciónFormulario de descripción de almacén de datosComentariosCaracterísticas del almacén de datos200 400045,000 42,0006Nombre del conjunto de datosMiembro de copiaEstructura de datosClave primariaClaves secundariasCliente.MSTClientmastRegistro de clienteNúmero de clienteNombre del clienteCPMonto comprado del año a la fechaLos registros del Archivo maestro de clientes se copian a un archivode clientes y también a un archivo de historial y se purgan si el cliente no ha compradoun artículo en los últimos cinco años. Se puede retener un cliente, incluso aunqueno haya realizado una compra, con el hecho de solicitar un catálogo.FIGURA 8.9Un ejemplo de formulario de des-cripción de almacén de datos de laDivisión de catálogos de World’sTrend.www.xlibros.com
238 PARTE III • EL PROCESO DE ANÁLISISdatos con un número máximo de 45,000 registros (en el capítulo 13 explicaremos los detalles sobre losregistros y las claves que se utilizan para ordenar la base de datos).9. La estructura de datos debe usar un nombre que se encuentre en el diccionario de datos y que provea unvínculo a los elementos para este almacén de datos. Como alternativa se podrían describir los elementos dedatos en el formulario de descripción del almacén de datos o en la pantalla de la herramienta CASE para elalmacén de datos. Las claves primaria y secundarias deben ser elementos (o una combinación de ellos) quese encuentren en la estructura de datos. En el ejemplo, el NÚMERO DE CLIENTE es la clave primaria ydebe ser único. El NOMBRE DEL CLIENTE, CP y MONTO COMPRADO DEL AÑO A LA FECHA sonclaves secundarias que se utilizan para registrar las secuencias en los informes y localizar registros en formadirecta (en el capítulo13 hablaremos sobre las claves). Los comentarios se utilizan para la información queno se ajusta en ninguna de las categorías anteriores; pueden incluir cuestiones sobre la sincronización de laactualización o los respaldos, seguridad u otro tipo de consideraciones.CREACIÓN DEL DICCIONARIO DE DATOSLas entradas en el diccionario de datos se pueden crear después de haber completado el diagrama de flujo de datos,o construir a medida que éste se desarrolle. El uso de la notación algebraica y registros estructurales permite al ana-lista desarrollar el diccionario de datos y los diagramas de flujo de datos mediante una metodología arriba-abajo. Porejemplo, el analista puede crear un flujo de datos Diagrama 0 después de las primeras entrevistas y al mismo tiempocrear las entradas preliminares en el diccionario de datos. Por lo general estas entradas consisten en los nombres delos flujos de datos que se encuentran en el diagrama de flujo de datos y sus correspondientes estructuras de datos.Después de realizar varias entrevistas adicionales con los usuarios para aprender sobre los detalles del sistemay las formas en que interactúan con él, el analista expandirá el diagrama de flujo de datos y creará los diagramas hi-jos. Después hay que modificar el diccionario de datos para incluir los nuevos registros estructurales y los elemen-tos que se hayan deducido de entrevistas posteriores, de la observación y del análisis de los documentos.Cada nivel de un diagrama de flujo de datos debe usar datos apropiados. El Diagrama 0 debe incluir sólo formu-larios, pantallas, informes y registros. A medida que se crean los diagramas hijos, el flujo de datos que entra ysale de los procesos se vuelve cada vez más detallado, incluyendo los registros estructurales y los elementos.La figura 8.11 muestra una porción de dos niveles del diagrama de flujo de datos y las correspondientesentradas en el diccionario de datos para producir el cheque de nómina de un empleado. El proceso 5, que seencuentra en el Diagrama 0, es una vista general de la producción de un CHEQUE DE NÓMINA DE EM-PLEADO. La correspondiente entrada en el diccionario de datos para REGISTRO DE EMPLEADO muestra elNÚMERO DE EMPLEADO y cuatro registros estructurales, la vista de los datos que se obtuvieron en las prime-ras etapas del análisis. De manera similar, REGISTRO DE ARCHIVO DE TIEMPO y CHEQUE DE NÓMINADE EMPLEADO también se definen como una serie de estructuras.FIGURA 8.10Pantalla de Visible Analyst en laque se muestra la descripción deun almacén de datos.www.xlibros.com
CAPÍTULO 8 • ANÁLISIS DE SISTEMAS MEDIANTE EL USO DE DICCIONARIOS DE DATOS 239Es importante que los nombres de los flujos de datos en el diagrama de flujo de datos hijo estén contenidoscomo elementos o registros estructurales en el flujo de datos del proceso padre. Volviendo al ejemplo, INFOR-MACIÓN DE SALARIO (entrada en el proceso 5.3, CALCULAR MONTOS DE PAGO ACTUALES) es unregistro estructural contenido en el REGISTRO DE EMPLEADO (entrada para el proceso 5). De manera similar,SUELDO BRUTO (salida del proceso 5.3.4, un proceso de nivel más bajo que no se muestra en la figura) estácontenido en el registro estructural MONTOS DE PAGO ACTUALES (salida del proceso padre 5.3, CALCU-LAR MONTOS DE PAGO ACTUALES).Análisis de la entrada y la salidaUn paso importante para crear el diccionario de datos es identificar y categorizar el flujo de datos de entrada ysalida del sistema. Los formularios de análisis de entrada y salida contienen los siguientes cambios que se inclu-yen comúnmente:1. Un nombre descriptivo para la entrada o salida. Si el flujo de datos está en un diagrama lógico, el nombredebería identificar cuáles son los datos (por ejemplo, INFORMACIÓN DE CLIENTE). No obstante, si elanalista trabaja en el diseño físico o si el usuario declaró de manera explícita la naturaleza de la entrada o lasalida, el nombre debe incluir esa información relacionada con el formato. Algunos ejemplos son ESTADODE CUENTA DE FACTURACIÓN DE CLIENTE y CONSULTA DE DETALLES DE CLIENTE.2. El contacto del usuario responsable de la aclaración de los detalles posteriores, la retroalimentación sobre eldiseño y la aprobación final.3. Si los datos son de entrada o salida.4. El formato del flujo de datos. En la etapa de diseño lógica, el formato puede estar indeterminado.5. Los elementos que indican la secuencia de los datos en un informe o pantalla (tal vez en columnas).6. Una lista de elementos, incluyendo sus nombres, longitudes y si son base o derivados, además de suscriterios de edición.Una vez completado el formulario, hay que analizar cada elemento para determinar si el elemento se repite,si es opcional o si es mutuamente excluyente de otro elemento. Los elementos que caen en un grupo o que seEstructura de datosFlujo de datosRegistrode empleadoNúmero de empleado +Información personal +Información de salario +Información de sueldo actual +Información del año a la fechaRegistrode archivo detiempoNúmero de empleado +Nombre de empleado +Horas trabajadasCheque denóminade empleadoNúmero de empleado +Nombre de empleado +Dirección +Montos de pago actuales +Cifras del año a la fechaInformaciónde sueldoTasa de pago +Número de dependientesMontosde pagoactualesSueldo bruto +Retención federal +Retención estatal +Retención del seguro social +Sueldo netoProducircheque denóminade empleado5EmpleadoRegistro de archivode tiempoCheque denóminade empleadoMontosde pagoactuales decomputadoras5.3Informaciónde salarioHorastrabajadasMontos depago actuales=====Archivo de tiempode empleadosD2D1 Archivo maestrode empleadosRegistrode empleadoFIGURA 8.11Dos diagramas de flujo de datos y sus correspondientes entradas en el diccionariode datos para producir el sueldo de nómina de un empleado.www.xlibros.com
240 PARTE III • EL PROCESO DE ANÁLISIScombinan con regularidad con otros elementos en muchas estructuras se deben colocar juntos en un registro es-tructural.Estas consideraciones se pueden ver en el Formulario de análisis de entrada y salida para la División de catá-logos de World’s Trend (vea la figura 8.12). En este ejemplo de un ESTADO DE CUENTA DE FACTURACIÓNO P O R T U N I D A D D E C O N S U L T O R Í A 8 . 1¿Deseas triunfar en el teatro? ¡Mejora tu dicción(ario)!M ientras usted entra a Merman’s, Annie Oaklea lo recibe cor-dialmente y le dice: “Estoy encantada con el trabajo que hizo en losdiagramas de flujo de datos. Me gustaría que siguiera desempe-ñando el rol de analista de sistemas en Merman’s para ver si puedeen un momento dado crear un sistema de información para nuestroinventario de vestuarios. Por desgracia, algunos de los términos queutiliza no se adaptan muy bien al lenguaje de Shakespeare. Sospe-cho que es un ligero problema de traducción”.Aferrado al elogio inicial de Annie, usted no se ve alterado porsu comentario final y llega a la determinación de que un diccionariode datos basado en los diagramas de flujo de datos de las rentas ydevoluciones sería un gran éxito.Empiece por escribir entradas para un sistema manual con elmayor detalle posible. Prepare dos entradas de proceso de datos, dosentradas de flujo de datos, dos entradas de almacén de datos, una en-trada de estructura de datos y cuatro entradas de elementos de datosmediante el uso de los formatos que vimos en este capítulo. Al repre-sentar los elementos de datos interrelacionados con precisión recibirácríticas muy favorables (vea la Oportunidad de consultoría 7.1).Nombre de entrada/salidaContacto de usuarioTipo de archivo Salida EntradaFormato de archivo Informe Pantalla IndeterminadoElemento(s) de secuenciaFormulario de análisis de entrada y salidaEstado de cuenta de facturación del clienteSusan HanCódigo postal (secuencia de página)Número de pedidoNombre de elemento Longitud B/D Criterios de ediciónFecha actual 6 B (Suministrada por el sistema)Número de cliente 6 D (incluye dígito de verificación)Primer nombre del cliente 20 B Sin espaciosApellido del cliente 15 B Sin espaciosInicial segundo nombre del cliente 1 B A a la Z o EspacioCalle 20 B Sin espaciosDepartamento 20 B Sin espaciosCiudad 20 B Sin espaciosEstado 2 B Abreviación de estado válida.CP 9 B Numérico, últimas 4 opc.Número de pedido 6 D > 0Fecha del pedido 8 B MM/DD/AAAATotal del pedido 9 D Formato: 9 (7)V99Monto de pago anterior 5 D Formato: 9 (7)V99Monto total deudor 9 D Formato; 9 (7)V99Comentario 60 BComentarios Imprimir una página para cada cliente. Si hay más elementos delos que puedan ajustarse en una página, continuar en una segunda página..FIGURA 8.12Un ejemplo de un formulario deanálisis de entrada/salida para laDivisión de catálogos de World’sTrend.www.xlibros.com
CAPÍTULO 8 • ANÁLISIS DE SISTEMAS MEDIANTE EL USO DE DICCIONARIOS DE DATOS 241DEL CLIENTE, los elementos PRIMER NOMBRE DEL CLIENTE, APELLIDO DEL CLIENTE e INICIALSEGUNDO NOMBRE DEL CLIENTE se deben agrupar en un registro estructural.Desarrollo de almacenes de datosOtra actividad para crear el diccionario de datos es la de desarrollar almacenes de datos. Hasta ahora hemosdeterminado qué datos necesitan fluir de un proceso a otro. Esta información se describe en las estructuras dedatos. Sin embargo, la información se puede almacenar en muchos lugares; además, en cada lugar se puede al-macenar en forma distinta. Mientras que los flujos de datos representan datos en movimiento, los almacenes dedatos representan los datos estáticos.Por ejemplo, cuando llega un pedido a World’s Trend (vea la figura 8.13) contiene en su mayor parte infor-mación temporal; es decir, la información necesaria para llenar ese pedido específico, pero parte de esa informa-ción se podría almacenar en forma permanente. Algunos ejemplos de esto podrían ser la información sobre losclientes (para poderles enviar catálogos) y la información sobre los artículos (ya que estos artículos apareceránen los pedidos de muchos otros clientes).Los almacenes de datos contienen información de una naturaleza permanente o semipermanente (temporal).Los elementos NUMERO DE ARTÍCULO, DESCRIPCIÓN y COSTO DE ARTÍCULO son ejemplos de infor-mación relativamente permanente, al igual que TASA DE IMPUESTO. Sin embargo, cuando se multiplica elCOSTO DEL ARTÍCULO por la TASA DE IMPUESTO, se calcula (o se deriva) el IMPUESTO A COBRAR.Los valores derivados no tienen que guardarse en un almacén de datos.Al crear almacenes de datos sólo para un informe o pantalla, los denominamos “vistas de usuario” ya querepresentan la forma en que el usuario desea ver la información.Archivo maestrode clientes =Número de cliente +Nombre del cliente +Dirección +Teléfono +Número de tarjeta de crédito corporativa +Fecha de expiraciónArchivo maestrode artículos =Número de artículo +Precio +Cantidad en existenciaRegistrode pedido =Número de cliente +Número de catálogo +Fecha del pedido +{Artículos del pedido disponibles} +Total de mercancía +(Impuestos) +Envío y manejo +Total del pedido +Método de pago +(Tipo de tarjeta de crédito) +(Número de tarjeta de crédito) +(Fecha de expiración)Artículos del pedidodisponibles =Número de artículo +Cantidad ordenada +Cantidad enviada +Precio actualMétodo de pago = [Cheque Crédito Giro postal]Tipo de tarjetade crédito =[World’s Trend American Express MasterCard Visa ]FIGURA 8.13Los almacenes de datos derivadosde un pedido pendiente en laDivisión de catálogos de World’sTrend.www.xlibros.com
242 PARTE III • EL PROCESO DE ANÁLISISUSO DEL DICCIONARIO DE DATOSEl diccionario de datos ideal es automatizado, interactivo, en línea y evolutivo. A medida que el analista de sis-temas aprende sobre los sistemas de la organización, se agregan elementos de datos al diccionario de datos. Porotra parte, el diccionario de datos no es un fin en sí mismo y nunca deberá serlo. Para evitar desviarse con laconstrucción de un diccionario de datos completo, el analista de sistemas debe considerarlo como una actividadparalela al análisis y diseño de sistemas.Para que tenga el máximo poder, el diccionario de datos debe enlazarse en varios programas de sistemas, demanera que cuando se actualice o elimine un elemento del diccionario de datos, se actualice o elimine automáti-camente de la base de datos. El diccionario de datos se convierte simplemente en una curiosidad histórica si nose mantiene actualizado.Podemos usar el diccionario de datos para crear pantallas, informes y formularios. Por ejemplo, examine laestructura de datos para la LISTA DE SELECCIÓN DE PEDIDO de World’s Trend en la figura 8.14. Como sehan definido los elementos necesarios y sus longitudes, el proceso de crear documentos físicos consiste en orde-nar los elementos de una forma agradable y funcional mediante el uso de los lineamientos de diseño y sentidocomún. Los grupos repetitivos se convierten en columnas y los registros estructurales se agrupan en la pantalla,el informe o el formulario. La distribución del informe para la LISTA DE SELECCIÓN DE PEDIDO de World’sTrend se muestra en la figura 8.15. Cabe mencionar que PRIMER NOMBRE y APELLIDO PATERNO estánagrupados en NOMBRE; además CANTIDAD (SELECCIONADA y ORDENADA), SECCIÓN, NÚMERO DELista de selección de pedido = Número de pedido +Fecha del pedido +Número de cliente +Nombre del cliente +Dirección del cliente +Teléfono del cliente +{Selección de artículos del pedido} +Número de artículosSelección de artículos del pedido = Número de artículo +Descripción del artículo +Descripción del tamaño +Descripción del color +Sección de almacén +Número de repisa +Cantidad ordenada +Cantidad seleccionadaNombre del cliente = Primer nombre +(Inicial segundo nombre) +Apellido paternoDirección = Calle +(Departamento) +Ciudad +Estado +CP +(Expansión de CP) +(País)Teléfono Código de área +Número localFIGURA 8.14Estructura de datos para una listade selección de pedido en laDivisión de catálogos de World’sTrend.www.xlibros.com
CAPÍTULO 8 • ANÁLISIS DE SISTEMAS MEDIANTE EL USO DE DICCIONARIOS DE DATOS 243REPISA, NÚMERO DE ARTÍCULO, DESCRIPCIÓN DEL ARTÍCULO, TAMAÑO y COLOR forman una se-rie de columnas, ya que son los elementos repetitivos.La estructura de datos y los elementos para un almacén de datos se utilizan comúnmente para generar elcorrespondiente código fuente en lenguaje de computadora, el cual se incorpora a su vez en los programas decomputadora. Podemos utilizar el diccionario de datos junto con el diagrama de flujo de datos para analizar eldiseño del sistema, detectar fallas y áreas que necesiten aclaración. Algunas consideraciones son:1. Todos los elementos base en un flujo de datos de salida deben estar presentes en un flujo de datos de entradapara el proceso que produce la salida. Los elementos base se teclean; nunca deben ser creados por un proceso.2. Un elemento derivado debe ser creado por un proceso y debe estar en la salida de por lo menos un procesodel cual no sea entrada.3. Los elementos presentes en un flujo de datos entrante o saliente de un almacén de datos deben estarcontenidos en el almacén de datos.Si se empieza en las primeras etapas de las fases de análisis y diseño, el diccionario de datos nos puede ahorrarmuchas horas. Éste es la única fuente común en la organización para responder preguntas y resolver disputas sobrecualquier aspecto de la definición de datos. Un diccionario de datos actualizado puede constituir un excelente marcode referencia para los esfuerzos de mantenimiento en sistemas con los que no estemos familiarizados. Los dicciona-rios de datos automatizados pueden servir como referencias tanto para las personas como para los programas.Uso de diccionarios de datos para crear XMLEl lenguaje de marcado extensible (XML) es un lenguaje que se puede usar para intercambiar datos entre lasempresas o entre los sistemas dentro de una empresa. Es similar al HTML, el lenguaje de marcado que se uti-liza para crear páginas Web, sólo que es más potente. El HTML se enfoca principalmente en el formato de undocumento; XML aborda el problema de compartir los datos cuando los usuarios tienen distintos sistemas compu-Número de pedido: 999999 Fecha del pedido Z9/99/9999Número de cliente: 999999Nombre: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCalle: XXXXXXXXXXXXXXXXXXXXXXXXXXXXDepartamento: XXXXXXXXCiudad, estado, CP XXXXXXXXXXXXXXXXXXXXXXXXXXXX, XX 99999-ZZZZPaís: XXXXXXXXXXXXXXXXXXXXXXXXXXXXTeléfono: (999) 999-9999Lista de selección de pedido---- Cantidad ---- Númerode repisaNúmerode artículoSeleccionada Ordenada Sección Descripción del artículo Tamaño ColorZZZZ9 XXXXX 99999 999999 XXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXX XXXXXXXXZZZZ9 XXXXX 99999 999999 XXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXX XXXXXXXXZZZZ9 XXXXX 99999 999999 XXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXX XXXXXXXXZZZZ9 XXXXX 99999 999999 XXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXX XXXXXXXXZZZZ9 XXXXX 99999 999999 XXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXX XXXXXXXXZZZZ9 XXXXX 99999 999999 XXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXX XXXXXXXXZZZZ9 XXXXX 99999 999999 XXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXX XXXXXXXXZZZZ9 XXXXX 99999 999999 XXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXX XXXXXXXXNúmero de artículos: Z9World’s TrendFIGURA 8.15Lista de selección de pedido creada apartir del diccionario de datos.www.xlibros.com
244 PARTE III • EL PROCESO DE ANÁLISIStacionales y distinto software, o distintos sistemas de administración de bases de datos (por ejemplo, cuando unaempresa utiliza Oracle y otra utiliza DB2 de IBM). Si todos usaran el mismo software o sistema de administra-ción de bases de datos, el XML se utilizaría muy poco.Una vez creado un documento de XML, podemos transformar los datos en varios formatos de salida, paravisualizarlos en muchas formas, incluyendo la salida impresa, páginas Web, la salida para un dispositivo portátily archivos de formato de documento portable (PDF). Por ende, el contenido de datos del documento se separadel formato de salida. El contenido de XML se define una vez como datos y después se transforma todas las ve-ces que sea necesario.La ventaja de usar un documento de XML es que el analista puede seleccionar sólo los datos que necesitanun departamento interno o un socio interno para poder funcionar. Esto ayuda a asegurar la confidencialidad delos datos. Por ejemplo, una empresa de embarques puede recibir sólo el nombre del cliente, la dirección, el nú-mero de artículo y la cantidad a enviar, pero no la información sobre la tarjeta de crédito u otros datos financie-ros. Este eficiente método también reduce la sobrecarga de información.Por lo tanto, el XML es una forma de definir, ordenar, filtrar y traducir datos en un lenguaje de datos univer-sal que todos puedan utilizar. El XML se puede crear a partir de bases de datos, un formulario o programas desoftware, o se puede teclear directamente en un documento, editor de texto o programa para introducir XML.El diccionario de datos es un punto de inicio ideal para desarrollar contenido de XML. La clave para usar elXML es crear una definición estándar de los datos. Para lograr esto hay que usar un conjunto de etiquetas o nom-bres de datos que se incluyan antes y después de cada elemento o estructura de datos. Las etiquetas se conviertenen los metadatos, o datos sobre los datos. Éstos se pueden seguir dividiendo en elementos y estructuras de menortamaño hasta que se definan todos los elementos. Los elementos de XML también pueden incluir atributos: unapieza de datos adicional que se incluye con la etiqueta y describe algo sobre el elemento de XML.La figura 8.16 muestra un diccionario de datos que contiene información sobre cliente, pedido y pago. Lacolección general de clientes se incluye en lo que se denomina elemento raíz: clientes. Un documento de XMLpuede contener sólo un elemento raíz, por lo que a menudo es el plural de los datos contenidos en el documentode XML. Cada cliente puede colocar muchos pedidos. La estructura se define en las dos columnas izquierdasy el código de XML aparece a la derecha. Como puede ver, CLIENTE consiste en NOMBRE, DIRECCIÓN,SALDO ACTUAL, varias entradas INFORMACIÓN DE PEDIDO y un PAGO. Algunas de estas estructuras sesubdividen todavía más.El documento de XML tiende a reflejar la estructura del diccionario de datos. La primera entrada (además dela línea de XML que identifica el documento) es <cliente>, la cual define la colección completa de informacióndel cliente. Los símbolos menor que (<) y mayor que (>) se utilizan para identificar los nombres de las etiquetas(en forma similar al HTML). La última línea del documento de XML es una etiqueta de cierre, </cliente>, que in-dica el final de la información del cliente.El cliente se define primero y contiene un atributo, el número de cliente. A menudo hay un debate en cuantoa si debemos almacenar los datos como un elemento o un atributo. En este caso se almacenan como atributo.La etiqueta de nombre <nombre> se define a continuación, ya que es la primera entrada en el diccionario dedatos. NOMBRE es una estructura que consiste en APELLIDO PATERNO, PRIMER NOMBRE y una INICIALDE SEGUNDO NOMBRE opcional. En el documento de XML esta estructura empieza con <nombre> y va se-guida de <apellidopaterno>, <primernombre> y <inicialsegundonombre>. Como no se permiten espacios en losnombres de las etiquetas de XML, por lo general se utiliza un guión bajo para separar las palabras. La etiqueta decierre </nombre> indica el final del grupo de elementos. Al utilizar una estructura como nombre podemos ahorrartiempo y código si la transformación muestra el nombre completo. Cada uno de los elementos hijos estará en unalínea separada por un espacio. El nombre también contiene un atributo, ya sea I de individuo o C de corporación.Se utiliza la sangría para mostrar qué estructuras contienen elementos. Cabe mencionar que <direccion> essimilar a <cliente>, pero cuando llegamos a <informacion_pedido> hay una gran diferencia.Hay varias entradas para <informacion_pedido>, cada una de las cuales contiene un <numero_pedido>, <fe-cha_pedido>, <fecha_envio> y <total>. Como el pago se hace por cheque o tarjeta de crédito, puede haber sólouna de estas dos opciones presentes. En nuestro ejemplo, el pago se hace por cheque. Las fechas tienen un atri-buto conocido como formato, el cual indica si la fecha aparece como mes, día año; como año, mes, día; o comodía, mes, año. Si se utiliza una tarjeta de crédito para hacer un pago, un atributo TIPO contiene una M, V, A, D, ouna O para indicar el tipo de tarjeta de crédito (MasterCard, Visa u otro tipo).Definiciones de tipo de documento de XMLA menudo la estructura del contenido de XML se define mediante el uso de una definición de tipo de documento(DTD). Esta definición se utiliza para determinar si el contenido del documento de XML es válido; es decir, sicumple con el orden y tipo de los datos que deben estar presentes en el documento. Es fácil crear la DTD y ade-más cuenta con muy buen soporte a través de software estándar. Una vez completada la DTD, podemos usarlapara validar el documento de XML mediante el uso de las herramientas estándar de XML. Es más fácil crear lawww.xlibros.com
CAPÍTULO 8 • ANÁLISIS DE SISTEMAS MEDIANTE EL USO DE DICCIONARIOS DE DATOS 245DTD si se ha completado un diccionario de datos, ya que significa que el analista trabajó con los usuarios y tomódecisiones en cuanto a la estructura de los datos.La figura 8.17 ilustra la definición de tipo de documento para el documento de XML llamado Cliente. Laspalabras clave tales como !DOCTYPE, que indica el inicio de la DTD, deben estar todas en mayúsculas. !ELE-MENT describe un elemento y !ATTLIST describe un atributo; se enlista el nombre del elemento seguido por elnombre del atributo. Un elemento con la palabra clave #PCDATA (Parsed Character Data, o datos tipo carácteranalizados) es un elemento primitivo que ya no se define con más detalle. Un elemento que tiene una serie deotros elementos entre paréntesis indica que son elementos hijos y deben estar en el orden listado. La instrucción<!ELEMENT nombre (apellidopaterno, primernombre, inicial_segundonombre?)> indica que el nombre debetener el apellido paterno, seguido del primer nombre, seguido de la inicial del segundo nombre. El signo deDiccionario de datos XML<?xml version="1.0"><clientes><cliente numero="C15008"><nombre tipo="I"><apellidopaterno>Stadler</apellidopaterno><primernombre>Karen</primernombre><inicial_segundonombre>L</inicial_segundonombre></nombre><direccion><calle>123 Oak Street</calle><departamento>Suite 16</departamento><ciudad>Madison</ciudad><estado>WI</estado><cp>43704</cp><pais>Estados Unidos</pais></direccion><saldo_actual>123.45</saldo_actual><pedido numero_cliente="C15008"><numero_pedido>00123</numero_pedido><fecha_pedido formato="aaaammdd">2008-06-23</fecha_pedido><fecha_envio formato="aaaammdd">2008-06-25</fecha_pedido><total>1345.89</total></pedido><pedido numero_cliente="C15008"><numero_pedido>00127</numero_pedido><fecha_pedido formato="aaaammdd">2008-09-18</fecha_pedido><fecha_envio formato="aaaammdd">2008-09-26</fecha_pedido><total>240.00</total></pedido><pago><cheque><numero_cheque>7234</numero_cheque></cheque><fecha_pago formato="aaaammdd">2008-09-30</fecha_pago><monto_pago>1585.89</monto_pago><pago><cliente></clientes>Cliente = Nombre +Dirección +Saldo actual +{Información de pedido} +PagoApellido paterno +Primer nombre +(Inicial segundo nombre)Nombre =Calle +(Departamento) +Ciudad +Estado +CP +PaísDirección =Número de pedido +Fecha de pedido +Fecha de envío +TotalInformaciónde pedido =Pago =Número de chequeCheque =Número de tarjeta de crédito +Fecha de expiraciónTarjeta de crédito =[Cheque Tarjeta de crédito] +Fecha de pago +Monto de pagoFIGURA 8.16Uso de una entrada en el diccionario de datos para desarrollar contenido de XML. Eldocumento de XML refleja la estructura del diccionario de datos.www.xlibros.com
246 PARTE III • EL PROCESO DE ANÁLISISinterrogación después de “inicial_segundonombre” significa que el elemento es opcional y se puede omitir deldocumento para un cliente específico. Un signo positivo indica que hay uno o más elementos que se puedenrepetir. Los clientes deben contener por lo menos una etiqueta de cliente, pero pueden contener muchas de estasetiquetas. Un asterisco significa que hay cero o más de los elementos. Cada cliente puede tener cero o más pe-didos. Una barra vertical separa dos o más elementos hijos que son mutuamente excluyentes. El pago contieneya sea cheque o tarjeta de crédito como opción.La definición de la lista de atributos para un número de cliente contiene un ID de palabra clave (en letras ma-yúsculas). Esto significa que el atributo número debe aparecer sólo una vez en el documento de XML como atri-buto para un elemento con un ID. Esto es algo similar a una clave primaria; la diferencia es que, si el documentotuviera distintos elementos, cada uno con un atributo ID, el ID dado (C15008 en este ejemplo) podría aparecersólo una vez. Un ID debe empezar con una letra o guión bajo y no puede ser únicamente un número. La razónpara poner el número de cliente como ID es para asegurar que no se repita en un documento más extenso. La pala-bra clave #REQUIRED significa que el atributo debe estar presente. La palabra clave #IMPLIED significa que elatributo es opcional. Un documento también puede tener un atributo IDREF, el cual vincula un elemento con otroque sea ID. La etiqueta PEDIDO tiene un atributo numero_cliente definido como IDREF y el valor C15008 debeestar presente en un ID en alguna parte del documento. Una lista de atributos que contenga valores entre parénte-sis significa que el atributo debe contener uno de los valores. La definición de DTD <!ATTLIST tarjeta_creditotipo (M|V|A|D|O) #REQUIRED> significa que el tipo de tarjeta de crédito debe ser M, V, A, D u O.Esquemas de XMLUn esquema es otra manera más precisa de definir el contenido de un documento de XML. Los esquemas puedenincluir el número exacto de veces que puede ocurrir un elemento, así como el tipo de datos dentro de los elemen-< !DOCTYPE clientes [< !ELEMENT clientes< !ELEMENT cliente< !ATTLIST cliente numero< !ELEMENT nombre< !ATTLIST nombre tipo<!ELEMENT apellidopaterno< !ELEMENT primernombre< !ELEMENT inicial_segundonombre< !ELEMENT direccion< !ELEMENT calle< !ELEMENT departamento< !ELEMENT ciudad< !ELEMENT estado< !ELEMENT cp< !ELEMENT pais< !ELEMENT saldo_actual< !ELEMENT pedido< !ATTLIST pedido numero_cliente< !ELEMENT numero_pedido< !ELEMENT fecha_pedido< !ATTLIST fecha_pedido formato< !ELEMENT pago< !ELEMENT cheque< !ELEMENT tarjeta_credito< !ATTLIST tarjeta_credito tipo< !ELEMENT numero_tarjeta_credito< !ELEMENT fecha_expiracion< !ELEMENT fecha_pago< !ATTLIST fecha_pago formato< !ELEMENT monto_pago]>(cliente)+>(nombre, direccion, saldo_actual, pedido*)>ID #REQUIRED>(apellidopaterno, primernombre, inicial_segundonombre?>(I/C #REQUIRED>(#PCDATA) >#PCDATA) >(#PCDATA) >(calle, departamento?, ciudad, cp, país)>(#PCDATA) >(#PCDATA) >(#PCDATA) >(#PCDATA) >(#PCDATA) >(#PCDATA) >(#PCDATA) >(numero_pedido, fecha_pedido, fecha_envio, total)>IDREF #REQUIRED>(#PCDATA) >(#PCDATA) >(mmddaaaa|aaaammdd|ddmmaaaa) #REQUIRED>(cheque|tarjeta_credito >(numero_cheque)>(numero_tarjeta_credito, fecha_expiracion)>(M|V|A|D|O #REQUIRED>(#PCDATA) >(#PCDATA) >(#PCDATA) >(mmddaaaa|aaaammdd|ddmmaaaa) #REQUIRED>(#PCDATA) >FIGURA 8.17Una definición de tipo dedocumento para el documentode XML cliente.www.xlibros.com
CAPÍTULO 8 • ANÁLISIS DE SISTEMAS MEDIANTE EL USO DE DICCIONARIOS DE DATOS 247EXPERIENCIA DE HYPERCASE® 8“En realidad lo está haciendo muy bien. Snowden dice que us-ted le ha dado todo tipo de nuevas ideas para dirigir el nuevo depar-tamento. Eso es decir bastante, si consideramos que él tiene muchasideas propias. Para este momento espero que haya tenido la oportu-nidad de hablar con todos los que usted quería: en definitiva conSnowden, Toni Ketcham, Daniel Hill y el Sr. Hyatt”.“El Sr. Hyatt es un alma escurridiza, ¿verdad? Creo que yo nolo conocí sino hasta mi tercer año. Espero que usted pueda averiguarsobre él en mucho menos tiempo. Oh, pero cuando lo llega uno aconocer es todo un personaje, ¿o no? Y esos locos aeroplanos. Casise estrella uno en mi cabeza en el estacionamiento. Pero ¿cómo sepuede uno enojar si es El Jefe quien lo está volando? También tiene unjardín oriental secreto (o debería decir privado) afuera de su suite deoficina. No, nunca lo podrá ver en los planes de construcción. Tieneque llegar a conocerlo muy bien antes de que él le muestre eso, peroapostaría a que es el único en su género en Tennessee y tal vez en todoEstados Unidos. Se enamoró de los maravillosos jardines que vio enel sureste de Asia cuando era joven. Sin embargo, es algo que va másallá de eso. El Sr. Hyatt sabe el valor de la contemplación y la medi-tación. Si él tiene una opinión, usted puede estar seguro de que la haconsiderado mucho”.Preguntas de HYPERCASE1. Haga una breve lista de los elementos de datos que hayaencontrado en tres distintos informes producidos en MRE.2. Con base en sus entrevistas con Snowden Evans y los demás,haga una lista de los elementos de datos que crea usted quedeba agregar a los sistemas de informes del proyecto de laUnidad de capacitación para capturar mejor los datosimportantes sobre el estado del proyecto, los tiempos deentrega y las estimaciones de presupuesto.3. Cree una entrada en el diccionario de datos para un nuevoalmacén de datos, un nuevo flujo de datos y un nuevoproceso de datos que usted sugiera con base en su respuesta ala pregunta 2.4. Sugiera una lista de nuevos elementos de datos que podríanser útiles para Jimmy Hyatt, pero que en definitiva no esténdisponibles para él en la actualidad.FIGURA 8.HC1En HyperCase podemos ver eldiccionario de datos que semantiene en MRE.tos, como los valores tipo carácter o numérico, incluyendo la longitud del elemento, los límites sobre los datos yel número de lugares a la izquierda y derecha de un número decimal.Un diccionario de datos es un excelente punto de partida para desarrollar un documento de XML y un tipode documento de definición o esquema. La ventaja de usar XML para definir datos es que, en el formato deXML, los datos se almacenan en texto puro y no dependen de ningún software propietario. El documento sepuede validar y transformar fácilmente en muchos formatos distintos de salida.Los grupos u organizaciones industriales pueden estar involucrados en la definición de una estructura deXML específica de la industria, de manera que todas las partes involucradas comprendan lo que significan losdatos. Esto es muy importante cuando el nombre de un elemento puede tener distintos significados. Un ejemplowww.xlibros.com
248 PARTE III • EL PROCESO DE ANÁLISISPALABRAS CLAVE Y FRASESdecimal empaquetadodecimal por zonasdefinición de tipo de documento (DTD)diccionario de datoselemento baseelemento de datoselemento derivadoelemento repetitivoentregables del sistemaesquemaestructura de datosestructura física de datosformato binariogrupo repetitivoIDIDREFlenguaje de marcado extensible (XML)registro estructuralrepositoriovarcharPREGUNTAS DE REPASO1. Defina diccionario de datos y metadatos.2. ¿Cuáles son las cuatro razones para compilar un diccionario de datos completo?3. ¿Qué información está contenida en el repositorio de datos?4. ¿Qué es un registro estructural?5. Haga una lista de las ocho categorías específicas que debe contener cada entrada en el diccionario de datos. Mencioneuna definición breve de cada categoría.6. ¿Cuáles son las diferencias básicas entre las entradas en el diccionario de datos preparadas para los almacenes de datos,las estructuras de datos y los elementos de datos?7. ¿Por qué se utilizan registros estructurales?8. ¿Cuál es la diferencia entre estructuras de datos lógicas y físicas?9. Describa la diferencia entre elementos base y derivados.10. ¿Cómo se relacionan las entradas en el diccionario de datos con los niveles en un conjunto de diagramas de flujo dedatos?11. Haga una lista de los cuatro pasos que se deben llevar a cabo para compilar un diccionario de datos.12. ¿Por qué la compilación del diccionario de datos no se debe ver como un final en sí?13. ¿Cuáles son los principales beneficios de usar un diccionario de datos?14. ¿Qué describe el lenguaje de marcado extensible (XML)?15. ¿Qué es una definición de tipo de documento?16. ¿Cómo ayuda una definición de tipo de documento a asegurar que un documento de XML contenga todos los elementosnecesarios?17. ¿Cuándo se deben usar atributos en un documento de XML?18. ¿Qué asegura un atributo ID?19. ¿Qué valida un atributo IDREF?es “estado”, el cual puede significar la abreviación de un estado postal, o el estado de un pedido o cuenta. En elsitio Web www.xml.org encontrará ejemplos de definiciones de tipo de documento y esquemas de XML.Mediante el uso de una metodología arriba-abajo, el analista desistemas utiliza los diagramas de flujo de datos para empezar acompilar un diccionario de datos, una obra de consulta que con-tiene datos sobre los datos, o metadatos, de todos los procesos,almacenes, flujos y estructuras de datos, además de todos loselementos lógicos y físicos del sistema que se está estudiando.Una manera de empezar es incluir todos los elementos de datosde los diagramas de flujo de datos.Un repositorio es una colección más grande de informaciónsobre el proyecto. Las herramientas CASE permiten al analistacrear un repositorio que pueda incluir información sobre flujosde datos, almacenes, estructuras de registros y elementos; sobreel diseño de pantallas e informes de la lógica de procedimiento;y sobre las relaciones de los datos. Un repositorio también puedecontener información sobre los requerimientos de los proyectosy los entregables finales del sistema; además de la informaciónadministrativa del proyecto.Cada entrada en el diccionario de datos contiene el nombre delelemento, una descripción en español, los alias, los elementos dedatos relacionados, el rango, la longitud, la codificación y la infor-mación de edición necesaria. El diccionario de datos es útil en todaslas fases de análisis, diseño y en última instancia, de documenta-ción, ya que es la fuente de autoridad que describe cómo se usa unelemento de datos y cómo lo definen los usuarios en el sistema.Muchos sistemas grandes incluyen diccionarios de datos compu-tarizados que realizan referencias cruzadas en todos los programasen la base de datos que utilizan un elemento de datos específico. Eldiccionario de datos también se puede usar para crear XML quepermita a las empresas con distintos sistemas, software o sistemasde administración de bases de datos, intercambiar información.RESUMENwww.xlibros.com
CAPÍTULO 8 • ANÁLISIS DE SISTEMAS MEDIANTE EL USO DE DICCIONARIOS DE DATOS 249PROBLEMAS1. Con base en la figura 7.EJ1 del capítulo 7, Joe, uno de los miembros de su equipo de análisis de sistemas, hizo lasiguiente entrada en el diccionario de datos que utiliza Marilyn’s Tours:ELEMENTO DE DATOS = TURISTA* * * * PAGOALIAS = PAGO TURISTACARACTERES = 12-24RANGO = $5.00-$1,000VARIABLES = $5.00, $10.00, $15.00 hasta $1,000, y cualquier cosa entre ese rango en dólares y centavos.PARA CALCULAR = COSTO TOTAL DE TODOS LOS PASEOS, CUALQUIER IMPUESTO APLICABLE DELESTADO DE N.Y., menos los DEPÓSITOS DE RESERVACIÓN realizados.a. ¿Es éste un verdadero elemento de datos? ¿Por qué sí o por qué no?b. Vuelva a escribir la entrada en el diccionario de datos para PAGO DE TURISTA y reclasifíquela si es necesario. Usela forma apropiada para la clasificación que elija.2. Sue Kong, la analista de sistemas, ha realizado un progreso considerable para comprender el movimiento de datos enShanghai Megabank. Para compartir lo que ha hecho con los demás miembros de su equipo, así como con el jefe deoperaciones regionales, está formando un diccionario de datos.a. Escriba una entrada en el diccionario de datos de Sue para tres de los flujos de datos en la banca regional. La entradadeberá estar lo más completa que sea posible.b. Escriba una entrada en el diccionario de datos de Sue para tres de los almacenes de datos en la banca regional. Laentrada deberá estar lo más completa que sea posible.3. Jorge Alvarez, el gerente de la librería con la que su equipo de análisis de sistemas ha estado trabajando para crear unsistema de inventario computarizado, siente que uno de los miembros de su equipo está convirtiéndose en una verdaderamolestia al hacerle preguntas en extremo detalladas sobre los elementos de datos utilizados en el sistema. Por ejemplo,pregunta: “Jorge, ¿cuánto espacio, en caracteres, ocupa el listado de un ISBN?”.a. ¿Cuáles son los problemas que se crean al ir directamente con el gerente y hacerle preguntas relacionadas con lasentradas en el diccionario de datos? Use un párrafo para listar los problemas que pueda ver con el método delmiembro de su equipo.b. Explique en un párrafo al miembro de su equipo cómo puede obtener información de una mejor manera para eldiccionario de datos.4. Michael Bush es propietario de una tienda especializada en ropa y accesorios de viaje. Los fabricantes tienen su propiacodificación, pero hay muchos fabricantes. Establezca elementos de datos para seis distintos sombreros de viaje de tresdistintos proveedores.5. Michael (del problema 4) también ensambla paquetes de kits para acampar. Cada kit es un grupo de cuatro productosseparados que se venden en un paquete. Cada paquete (conocido como PRODUCTO) se construye mediante el uso demuchas piezas, las cuales varían de un producto a otro. A través de las entrevistas con el jefe de piezas se obtuvo unalista de elementos para la página Web PIEZAS DE PRODUCTO, la cual muestra qué piezas se utilizan en la fabricaciónde cada producto. En la figura 8.EJ1 se muestra un prototipo de la página Web PRODUCTO-PIEZA (PRODUCT-PART). Cree una entrada de estructura de datos en el diccionario para PRODUCTO-PIEZA.FIGURA 8.EJ1Un prototipo de la página WebPRODUCTO-PIEZA (PRODUCT-PART).www.xlibros.com
250 PARTE III • EL PROCESO DE ANÁLISIS9. Haga una lista de los archivos maestros que serían necesarios para implementar la CONSULTA DE DISPONIBILIDADDE CRUCERO.10. Los siguientes puertos de parada están disponibles para la empresa Pacific Holiday Company:Cree el elemento PUERTO DE PARADA. Examine los datos para determinar la longitud y el formato del elemento.6. Analice los elementos encontrados en la página Web PRODUCTO-PIEZA y cree la estructura de datos para losalmacenes de datos ARCHIVO MAESTRO DE PRODUCTO y ARCHIVO MAESTRO DE PIEZA.7. ¿Cuáles de los elementos en la página Web PRODUCTO-PIEZA son elementos derivados?8. La empresa Pacific Holiday Company hace los arreglos para las vacaciones en crucero de duraciones variables endiversas ubicaciones. Cuando los clientes llaman para verificar la disponibilidad de un crucero se utiliza unaCONSULTA DE DISPONIBILIDAD DE CRUCERO, la cual se muestra en la página 8.EJ2, para proveerles lainformación. Cree la estructura del diccionario de datos para la CONSULTA DE DISPONIBILIDAD DE CRUCERO.MM/DD/AAAA DISPONIBILIDAD DE CRUCERO HH:MMINTRODUZCA FECHA INICIAL Z9-ZZZ-9999INFORMACIÓN DE CRUCEROBARCO CRUCERO XXXXXXXXXXXXXXXXXXXUBICACIÓN XXXXXXXXXXXXXXXXXXXFECHA DE INICIO Z9-ZZ Z-9999 FECHA DE TERMINACIÓN Z9-ZZZ-9999NÚMERO DE DÍAS Z Z 9COSTO ZZ ,ZZZ.99DESCUENTOS ACEPTADOS XXXXXXXXXXXX XXXXXXXXXXXX XXXXXXXXXXXXXVACANTES DISPONIBLES ZZ ZZ9FIGURA 8.EJ2Una pantalla que muestra ladisponibilidad de un crucero.11. Raúl Esparza, gerente de comercio electrónico de Moonlight Mugs, una empresa que vende tazas de café personalizadas,desea enviar información a otra empresa que mantiene el almacén y provee servicios de envío. La información de lospedidos se obtiene a través de un sitio Web seguro, incluyendo el número de cliente, nombre y dirección, númerotelefónico, dirección de correo electrónico, número y cantidad de producto, así como la información de la tarjeta decrédito. Puede haber distintos productos que se envíen en un pedido. La empresa de envío maneja artículos para otrosnegocios pequeños también. Defina un documento de XML que incluya sólo la información que necesite la empresa deenvío para enviar los artículos al cliente.12. Una vez enviado el pedido del problema 11, la empresa de envío devuelve la información a Moonlight Mugs, incluyendoel nombre y la dirección del cliente, el número de rastreo del envío, los datos enviados, la cantidad ordenada, la cantidadenviada y la cantidad pendiente. Defina un documento de XML que incluya la información que se envía a MoonlightMugs.13. Cree una definición de tipo de documento para el problema 11.14. Western Animal Rescue es una organización sin fines de lucro que brinda apoyo para la adopción temporal y permanentede animales, como gatos, perros y aves. Las personas se pueden registrar para adoptar animales. Otros se registran yagregan animales para adopción. Cree la estructura de diccionario de datos que represente a una persona que se registreApia Nuku Hiva AucklandPago Pago Papeete WellingtonBora Bora Raiatea Christ ChurchMoorea Napier Dunedinwww.xlibros.com
CAPÍTULO 8 • ANÁLISIS DE SISTEMAS MEDIANTE EL USO DE DICCIONARIOS DE DATOS 251para adoptar un animal. Incluya el nombre, la dirección (calle, ciudad, estado o provincia, código postal o código de correo),número telefónico, dirección de correo electrónico, fecha de nacimiento, mascotas actuales (tipo, raza, edad de lamascota) y referencias. Cada persona puede tener varias mascotas y debe tener por lo menos tres referencias. Éstasdeben incluir el nombre, la dirección, número telefónico, dirección de correo electrónico y cómo conocen a la personaque se registró para adoptar un animal. Asegúrese de incluir la notación para los elementos repetitivos y los elementosopcionales.15. Defina la longitud, el tipo de datos y los criterios de validación para cada uno de los elementos del problema 14.16. Haga una lista de los almacenes de datos que se requerirían para implementar a la persona que se registra en el problema 14.17. Cree un documento de XML con datos de muestra para una persona que se registre para adoptar a un animal.PROYECTOS EN GRUPO1. Reúnase con su grupo y use una herramienta CASE o un procedimiento manual para desarrollar entradas en eldiccionario de datos para un proceso, flujo de datos, almacén de datos y estructura de datos con base en los diagramas deflujo que completó para Maverick Transport en los ejercicios en grupo del capítulo 7. Como grupo, lleguen a un acuerdoen cuanto a las suposiciones necesarias para realizar entradas completas para cada elemento de datos.2. Su grupo deberá desarrollar una lista de métodos para ayudarle a realizar entradas completas en el diccionario de datospara este ejercicio, así como para futuros proyectos. Por ejemplo, estudiar los informes existentes, basarse en diagramasde flujo de datos nuevos o existentes, etcétera.BIBLIOGRAFÍA SELECCIONADABaskerville, R. y J. Pries-Heje. “Short Cycle Time Systems Development”. Information Systems Journal, Vol. 14, 2004, pp.237-264.Conboy, K. y B. Fitzgerald. “Toward a Conceptual Framework of Agile Methods: A Study of Agility in Different Disciplines”,WISER ’04, 5 de noviembre de 2004, Newport Beach, CA, pp. 37-44.Davis, G. B. y M. H. Olson. Management Information Systems, Conceptual Foundations, Structure, and Development, 2ª. Edi-ción. Nueva York: McGraw-Hill, 1985.Gane, C. y T. Sarson. Structured Systems Analysis and Design Tools and Techniques. Englewood Cliffs, NJ: Prentice Hall,1979.Hoffer, J. A., M. Prescott y H. Topi. Modern Database Management, 9ª. Edición. Upper Saddle River, NJ: Prentice Hall,2009.Lucas, H. Information Systems Concepts for Management, 3ª. Edición. Nueva York: McGraw-Hill, 1986.Martin, J. Strategic Data-Planning Methodologies. Englewood Cliffs, NJ: Prentice Hall, 1982.Sagheb-Tehrani, M. “Expert Systems Development and Some Ideas of Design Process”. ACM SIGSOFT Software EngineeringNotes, Vol. 30, Núm. 2, marzo de 2005, pp. 1-5.Schmidt, A. Working with Visible Analyst Workbench for Windows. Upper Saddle River, NJ: Prentice Hall, 1996.Subramaniam, V. y A. Hunt. Practices of an Agile Developer. Raleigh, NC: Pragmatic Bookshelf, 2006.www.xlibros.com
252 PARTE III • EL PROCESO DE ANÁLISISE P I S O D I O 8CASO DE LA CPUALLEN SCHMIDT, JULIE E. KENDALL Y KENNETH E. KENDALLDefinir lo que queremos decir“Podemos usar los diagramas de flujo de datos que completamos para crear entradas en el diccionario de datos para todos losflujos de datos y almacenes de datos”, dice Chip a Anna en su siguiente reunión. Cada uno de estos componentes tiene unaentrada de composición en el repositorio. Por ende, los registros que se crean para el sistema computacional están vinculados alos componentes del diagrama de flujo de datos que describen los datos.Anna y Chip se reúnen para dividir el trabajo de crear registros y elementos. “Voy a desarrollar el diccionario de datos parala parte del sistema relacionada con el software”, dice Anna.“Por suerte me gusta hacerme cargo del hardware”, bromea Kid en forma amigable.Primero se crean los registros, o estructuras de datos. Éstos pueden contener elementos, los bloques básicos de construcciónde la estructura de datos, y también pueden contener otros registros en ellos, conocidos como registros estructurales. VisibleAnalyst también mantiene las relaciones entre los componentes de los diagramas, los registros y los elementos que se puedenusar para análisis e informes. Como Microsoft Visio no tiene un repositorio para los objetos de los diagramas de flujo de datos,utilizaremos el repositorio de Visible Analyst para ilustrar el repositorio en este episodio.Mediante el uso de la información de las entrevistas y las pantallas del prototipo, Anna empieza a crear los registros desoftware. Como la salida de un sistema determina lo que se necesita para almacenar y obtener los datos por medio de pantallasde entrada de datos, el punto de inicio es el flujo de datos de salida LISTA DE INSTALACIÓN DE SOFTWARE. Este prototipoidentifica algunos de los elementos que se deben guardar en el ARCHIVO MAESTRO DE SOFTWARE:NÚMERO DE INVENTARIO DE SOFTWARENÚMERO DE VERSIÓNNÚMERO DE CDUBICACIÓN EN EL CAMPUSTÍTULOINVENTARIO DE HARDWARENÚMEROUBICACIÓN DE SALATambién se examinan otros informes y pantallas del prototipo de salida. Se obtienen elementos adicionales de la pantallaAGREGAR SOFTWARE del prototipo. Estos elementos se ordenan en una secuencia lógica para la tabla de la base de datosdel ARCHIVO MAESTRO DE SOFTWARE. Se utilizan los siguientes estándares para ordenar los elementos dentro de unregistro:1. El elemento clave principal que identifica al registro en forma única. Un ejemplo es el NÚMERO DE INVENTARIO DESOFTWARE.2. Información descriptiva como TÍTULO, NÚMERO DE VERSIÓN y EDITORIAL.3. Información que se actualiza en forma periódica, como NÚMERO DE COPIAS.4. Cualquier elemento repetitivo, como NÚMERO DE INVENTARIO DE HARDWARE, que identifique las máquinas en lasque se ha instalado el software.A continuación se crea el registro ARCHIVO MAESTRO DE SOFTWARE mediante el uso del repositorio de VisibleAnalyst. En la figura E8.1 se muestra la pantalla de descripción para crear un registro (Nota: Esta pantalla puede ser distinta ala pantalla de estructura de datos en su copia de Visible Analyst. Para ver la pantalla que está en el mismo formato, haga clic enel menú Options [Opciones] y después haga clic de manera que haya una marca de verificación en frente de Classical UserInterface [Interfaz clásica de usuario]). Observe el área de entrada para un alias, o un nombre distinto para el registro, utilizadopor un grupo de usuarios distinto. Como cada usuario puede hacer referencia al mismo registro mediante un nombre distinto,hay que documentar todos esos nombres para mejorar la comunicación entre los usuarios.).Cada elemento o registro estructural necesita definirse como parte del registro completo, y se introduce en el área Composition(composición). Si el elemento o registro estructural es un grupo repetitivo, el nombre se encierra entre llaves ({ }) y se coloca elnúmero de veces que se repite en frente del nombre. Si los datos son claves, se coloca un código entre corchetes ([ ]) en frente delnombre. El símbolo [pk] representa una clave primaria. El símbolo [akn] representa una clave alterna, en donde n es 1, 2, 3, etcétera,y define a cada clave distinta o grupo de campos distintos que, al combinarse, forman una clave secundaria. Cuando un grupo decampos forma una clave secundaria, a esa clave se le denomina clave concatenada. El símbolo [fk] representa una clave foránea.Examine el ARCHIVO MAESTRO DE SOFTWARE. Contiene una clave primaria representada por NÚMERO DE IN-VENTARIO DE SOFTWARE y las claves secundarias TÍTULO, EDITORIAL y CATEGORÍA DE SOFTWARE.Visible Analyst le permite describir con facilidad cada registro estructural o elemento que compone al registrocompleto. Anna coloca el cursor en cada nombre en el área Composition y hace clic en el botón Jump (Saltar).A continuación se muestran más pantallas de registros y elementos, y se introduce información más detallada.www.xlibros.com
CAPÍTULO 8 • ANÁLISIS DE SISTEMAS MEDIANTE EL USO DE DICCIONARIOS DE DATOS 253Código de software activo +[pk]Número de inventario de software +[ak1]Título +Sistema operativo +Versión +[ak2]Editorial +[ak3]Categoría de software +Marca de computadora +Modelo de computadora +Memoria requerida +Licencia del sitio +Número de copias +Computadora de instalación +.Archivo maestro de softwareAlmacén de datosUn archivo que contiene información sobre un paquete de Software.Ésta es una tabla de base de datos. La clave primaria es Númerode inventario de software, con una clave secundaria representadapor Título, Número de versión y Sistema operativo.La tabla contiene aproximadamente 2924 registros.FIGURA E8.1Pantalla de descripción deregistros, ARCHIVO MAESTRODE SOFTWARE.“¡Excelente!” piensa Anna para sí misma. “Es muy fácil introducir los detalles, y al usar este método no olvidaré describirun elemento”.Chip también está impresionado con la simpleza en la creación del diccionario de datos. Con base en un proceso similaral de Anna, crea una descripción de registro para el ARCHIVO MAESTRO DE COMPUTADORAS, que contiene una tabla decinco tableros internos y dos registros estructurales, EQUIPO PERIFÉRICO e INFORMACIÓN DE MANTENIMIENTO. Elárea Composition para introducir los nombres de los registros o elementos es una región desplazable, lo que significa que sepueden teclear más líneas de las que caben en el área de visualización. A medida que se agregan entradas a la parte inferior dela región, las entradas de la parte superior se desplazan fuera del área.A medida que se agregan elementos al registro, Chip decide describir cada uno con detalle. La pantalla de descripción deelemento para NÚMERO DE INVENTARIO DE HARDWARE se muestra en la figura E8.2. Observe las áreas para introducirlos atributos de los elementos. Es posible incluir varios alias junto con una definición. Un área llamada Notes (Notas) contieneEl Número de inventario de hardware es un número único quedescribe a una computadora específica. Es el campo de claveprimaria para el Archivo maestro de computadoras. Está unidofísicamente como una pequeña etiqueta en la máquina.Número de inventario de hardwareUn número único asignado a cada máquina, que se localiza en formade una pequeña etiqueta de inventario en la máquina.Número de inventario de computadoraFIGURA E8.2Pantalla de descripción deelemento, NÚMERO DEINVENTARIO DE HARDWARE.www.xlibros.com
254 PARTE III • EL PROCESO DE ANÁLISIScualquier otra información útil sobre el elemento. Chip y Anna emplean esta área para agregar más criterios de edición y demásnotación útil. La descripción para el NÚMERO DE INVENTARIO DE HARDWARE detalla la forma en que se utiliza estenúmero para llevar un rastro físico de las máquinas.Al hacer clic en la ficha Physical Characteristics (Características físicas) aparece una segunda pantalla para NÚMERODE INVENTARIO DE HARDWARE, que se muestra en la figura E8.3. Esta pantalla contiene un área que muestra las estruc-turas dentro de las que está contenido el elemento, así como un área para el tipo de datos, la longitud y la imagen utilizada paradescribir el formato de los datos. Cada imagen es una entrada codificada que indica cuál debe ser el formato del elemento. Al-gunos ejemplos de los códigos son:Mantenimiento de computadorasComputadoraSistema operativo de computadoraHardware SoftwareSoftwareComputadora modificadaListado de instalaciones completasModificaciones de computadoraUbicación de computadoraInforme de problema de computadoraRegistro de transacción de computadoraAttrib Entity -->Class -->Class -->Class -->Class -->Data Flow -->Data Flow -->Data Flow -->Data Flow -->Data Flow -->Data Flow -->Número de inventario de hardwareFIGURA E8.3NÚMERO DE INVENTARIO DEHARDWARE, visualización de lascaracterísticas del elemento.Chip tiene cuidado de incluir entradas completas para estas áreas, incluyendo los valores predeterminados y si la entradapuede ser nula o no.Anna y Chip repiten este proceso para todos los elementos que se encuentran en cada registro. El esfuerzo lleva muchotiempo pero vale la pena. Después de crear los primeros registros se vuelve más fácil la creación del resto de las estructuras deregistros. Visible Analyst cuenta con una herramienta de búsqueda que provee listas de los elementos contenidos en el diseño.“Creo que hemos diseñado un conjunto completo de elementos”, dice Chip en una reunión de revisión.“Sí”, responde Anna. “Hay informes que nos mostrarán los detalles de las estructuras de datos y nos ayudarán a detectarlos elementos duplicados y las omisiones. Pongamos a Visible Analyst a trabajar para que produzca las distribuciones de losregistros por nosotros”.Se utilizó la herramienta Reports (Informes) para imprimir las distribuciones de los registros para todos los almacenes dedatos maestros.Análisis de registros y elementos“Ahora sí podemos aprovechar el poder de Visible Analyst”, dice Anna. “Veamos qué tan bien hemos diseñado nuestros datos”.“¿Qué quieres decir?”, pregunta Chip.“He estado estudiando las herramientas de análisis que contiene Visible Analyst, y hay muchas opciones para compro-bar la consistencia e integridad de nuestro diseño”, responde Anna. “El primer paso es usar la herramienta Reports paraproducir un informe sintetizado de los elementos que agregamos. Después podemos examinar la lista en busca de duplicadosy redundancia”.9 Representa datos numéricos: Es posible introducir sólo números al crear el prototipo.A Alfabético: Es posible introducir sólo caracteres alfabéticos.X Alfanumérico: Es posible introducir cualquier carácter.Z Cero supresión: Se sustituyen los ceros a la izquierda con espacios.$ Signo de dólares: Se sustituyen los ceros a la izquierda con un signo de dólares.www.xlibros.com
CAPÍTULO 8 • ANÁLISIS DE SISTEMAS MEDIANTE EL USO DE DICCIONARIOS DE DATOS 255La figura E8.4 es un ejemplo de una parte del informe resumido de elementos visualizado mediante Firefox. Los analistasdeben examinar con cuidado el contenido y buscar redundancia o elementos definidos más de una vez. Por lo general estas re-dundancias son fáciles de detectar, ya que la lista está ordenada por nombre de elemento. Los elementos NÚMERO DE IN-VENTARIO DE HARDWARE y NÚMERO DE HARDWARE, además de los elementos NÚMERO DE INVENTARIO DESOFTWARE y NÚM SOFTWARE parecen ser elementos duplicados. Otros duplicados, como UBICACIÓN SALA y UBICA-CIÓN son más difíciles de detectar.“Ahora debemos usar la opción No Location References (Sin referencias de ubicación), que muestra todos los elementosque no se incluyen en ningún registro”, dice Anna.“¡Es magnífico!”, exclama Chip. “Esta opción No Location References muestra el trabajo de diseño que necesita com-pletarse. Deberíamos producir este informe para todos los componentes de diseño”.Los elementos se agregaron a otras estructuras o se eliminaron como duplicados. Al producir el informe No LocationReferences una segunda vez ya no se revelaron elementos aislados.“Bueno, creo que con eso terminamos la porción de los datos del diseño del sistema”, dice Chip.“No tan rápido”, responde Anna. “Sólo hemos empezado a analizar. La herramienta Report Query (Consulta de informe)nos proveerá mucha información de diseño, tanto para análisis como para documentación”.Los analistas seleccionan un informe llamado Def Entities without Composition (Entidades definidas sin composición)como su primera elección. Este informe muestra las entradas que son un almacén de datos o una estructura de datos y tienenuna entrada de composición. La salida muestra que no hay registros con errores. La siguiente consulta es el informe Elementswithout Pictures (Elementos sin imágenes), que muestra todos los elementos que no tienen imágenes definidas. Un últimoinforme que crean Chip y Anna se llama Undefined Elements (Elementos indefinidos), el cual indica todos los elementos queexistan en el repositorio sólo como un nombre, pero sin características físicas.“Todavía no terminamos. Hay algunas matrices útiles que proveerán documentación para todas las modificaciones que sepuedan hacer en el futuro. Vamos a producir la matriz Data Elements versus Data Structures (Comparación entre elementosy estructuras de datos), que muestra a los registros y sus elementos”, sugiere Anna.La herramienta Report tiene la capacidad de producir informes y matrices en una representación de cuadrícula. Muestratodos los elementos y las estructuras de datos en las que están contenidos. Esta matriz se utiliza para tener acceso al efecto demodificar un elemento, para lo cual muestra las estructuras de datos correspondientes que se deben modificar.La siguiente matriz que se crea es Diagram Location Matrix (Matriz de ubicación de diagrama), la cual muestra a todoslos almacenes de datos y los diagramas en los que se encuentran. Esta información es útil si hay que hacer un cambio en el al-macén de datos, ya que indicará en donde debemos cambiar los programas y la documentación.La última matriz es Composition Matrix (Matriz de composición), la cual muestra todos los elementos de datos y los al-macenes de datos que los contienen. Esta matriz ofrece a Chip y Anna un panorama de todos los elementos que se pueden alma-cenar con redundancia; es decir, en varios almacenes de datos en vez de uno.“Hay muchos otros informes y matrices que serían útiles de producir para nosotros”, dice Anna. “Algunos de ellos losdeberíamos usar posteriormente para la documentación y para rastrear los cambios propuestos. En realidad estoy satisfecha conlo que hemos logrado”.EJERCICIOSNota: Si no utiliza Visible Analyst, puede realizar algunos de los siguientes ejercicios mediante una plantilla de Microsoft Wordo Microsoft Excel. La información del repositorio se incluye en una página Web repository.html que usted puede guardar.Fecha: 4/27/2010Hora: 2:03:54 PMProyecto: CPU Página: 1Listado sintetizado – Ordenado alfabéticamenteTodas las entradas de elementos de datos – diagramas de flujo de datosDescripciónElemento de datosDescripciónElemento de datosCódigo de software activoCódigo para determinar si el software está en uso en la actualidad.El nombre del fabricante de la computadora.Nombre de marcaDescripciónElemento de datosEl total de una marca de computadora.Subtotal de marcaDescripciónElemento de datosUn código utilizado para almacenar un edificio del campus.Código de campusDescripciónElemento de datosLa descripción de un edificio del campus de la Central Pacific University.Este campo coincide con el Código de campus.Descripción del campusDescripciónElemento de datosCampus en donde se encuentra la computadora.Ubicación de campusDescripciónElemento de datosEl nombre del campus que coincide con el código del campus.Nombre del campusDescripciónElemento de datosUna entrada codificada para el tipo de software. Se guarda como tabla de Access.Categoría de softwareDescripciónElemento de datosCiudadFIGURA E8.4Vista previa del resumen de loselementos.www.xlibros.com
256 PARTE III • EL PROCESO DE ANÁLISISE-1. Use Visible Analyst para ver el almacén de datos ARCHIVO MAESTRO DE COMPUTADORA (COMPUTER MAS-TER). Salte a la estructura de datos y explore los elementos y registros estructurales.E-2. Imprima el registro del ARCHIVO MAESTRO DE SOFTWARE mediante la herramienta Report.E-3. Use el botón Jump para avanzar a Software Record Structure. Elimine los siguientes elementos:CÓDIGO DE SOFTWARE ACTIVO (ACTIVE SOFTWARE CODE)COMPUTADORA DE INSTALACIÓN (INSTALLATION COMPUTER)EXPERTO DE SOFTWARE (SOFTWARE EXPERT)E-4. Modifique el registro MODIFICACIONES DE SOFTWARE (SOFTWARE CHANGES); suministre los cambios al re-gistro del ARCHIVO MAESTRO DE SOFTWARE. Las modificaciones son:a. Agregar un [pk] de clave primaria en frente del NÚMERO DE INVENTARIO DE SOFTWARE (SOFTWARE IN-VENTORY NUMBER).b. Agregar los siguientes elementos: MARCA DE COMPUTADORA (COMPUTER BRAND), MODELO DE COMPU-TADORA (COMPUTER MODEL), MEMORIA REQUERIDA (MEMORY REQUIRED), LICENCIA DEL SITIO(SITE LICENSE) y NÚMERO DE COPIAS (NUMBER OF COPIES).E-5. Modifique el registro de TRANSACCIÓN AGREGAR COMPUTADORA (COMPUTER ADD TRANSACTION), elcual contiene los registros de las nuevas computadoras que se van a colocar en el almacén de datos ARCHIVO MAES-TRO DE COMPUTADORAS.a. Inserte el NOMBRE DE MARCA (BRAND NAME) y MODELO (MODEL) arriba del NÚMERO DE SERIE (SE-RIAL NUMBER).b. Coloque los elementos UBICACIÓN DE CAMPUS (CAMPUS LOCATION) y UBICACIÓN DE SALA (ROOMLOCATION) después del NÚMERO DE SERIE.c. Agregue los siguientes elementos en la parte inferior de la lista: DISCO DURO (HARD DRIVE), DISCO DUROSECUNDARIO (SECOND HARD DRIVE) y DISCO ÓPTICO (OPTICAL DRIVE).E-6. Modifique la TRANSACCIÓN DE SOFTWARE INSTALADO (INSTALLED SOFTWARE TRANSACTION), que seutiliza para actualizar el ARCHIVO MAESTRO DE SOFTWARE (SOFTWARE MASTE) y producir el LISTADO DEINSTALACIÓN DE SOFTWARE (SOFTWARE INSTALLATION LISTING). Elimine el TÍTULO (TITLE) y NÚ-MERO DE VERSIÓN (VERSION NUMBER), ya que se pueden obtener del ARCHIVO MAESTRO DE SOFTWAREy son tecleo redundante. Agregue el NÚMERO DE INVENTARIO DE HARDWARE (HARDWARE INVENTORYNUMBER) y especifique la computadora de instalación. Elimine UBICACIÓN DE CAMPUS (CAMPUS LOCATION)y UBICACIÓN DE SALA (ROOM LOCATION), ya que son elementos de la computadora de instalación.E-7. Vea la entrada de alias para MODIFICACIONES DE SOFTWARE (SOFTWARE CHANGES).E-8. Modifique el almacén de datos SOFTWARE INSTALADO (INSTALLED SOFTWARE). Agregue el registro de com-posición TRANSACCIÓN DE SOFTWARE INSTALADO (INSTALLED SOFTWARE TRANSACTION). Los elemen-tos índices son NÚMERO DE INVENTARIO DE SOFTWARE (SOFTWARE INVENTORY NUMBER) y NÚMERODE INVENTARIO DE HARDWARE (HARDWARE INVENTORY NUMBER).E-9. Defina el almacén de datos ARCHIVO DE REGISTRO DE SOFTWARE (SOFTWARE LOG FILE). Este archivo seutiliza para almacenar información sobre los nuevos registros de software además de la fecha, hora e ID de usuario de lapersona que introduce el registro. Los elementos índices son NÚMERO DE INVENTARIO DE SOFTWARE, TÍTULO,VERSIÓN (una clave concatenada) y CATEGORÍA DE SOFTWARE (SOFTWARE CATEGORY).E-10. Defina el almacén de datos PEDIDOS DE COMPUTADORAS PENDIENTES (PENDING COMPUTER ORDERS).Este archivo se crea cuando se crea una orden de compra para ordenar nuevas computadoras; el sistema de computadorase encarga de actualizarlo. Coloque un comentario en el área Notes para declarar que el número promedio de registroses de 100. Los elementos índices son NÚMERO DE ORDEN DE COMPRA (PURCHASE ORDER NUMBER) y unaclave concatenada que consiste de NOMBRE DE MARCA (BRAND NAME) y MODELO (MODEL).E-11. Vea la entrada para el flujo de datos REGISTRO DE SOFTWARE (SOFTWARE RECORD). Haga clic en Jump con elcursor en el área Composition y examine el registro del ARCHIVO MAESTRO DE SOFTWARE (SOFTWARE MAS-TER). Haga clic en Back para regresar a la pantalla de descripción del flujo de datos.E-12. Modifique el flujo de datos INFORMACIÓN DE ACTUALIZACIÓN DE SOFTWARE (software UPGRADE INFOR-MATION). El registro de composición es INFORMACIÓN DE ACTUALIZACIÓN DE SOFTWARE.E-13. Modifique el flujo de datos INFORME DE REFERENCIAS CRUZADAS DE SOFTWARE (SOFTWARE CROSS-REFE-RENCE REPORT). El registro de composición es INFORME DE REFERENCIAS CRUZADAS DE SOFTWARE.E-14. Modifique la entidad del diagrama de flujo para INSTALAR ACTUALIZACIÓN (INSTALL UPDATE). Este flujo ac-tualiza el registro del ARCHIVO MAESTRO DE COMPUTADORAS (COMPUTER MASTER) con información sobrela instalación. Su estructura de datos es REGISTRO DE ACTUALIZACIÓN DE INSTALACIÓN (INSTALL UPDATERECORD). Incluya un comentario de que procesa aproximadamente 50 registros por mes al actualizar el ARCHIVOMAESTRO DE COMPUTADORAS.www.xlibros.com
CAPÍTULO 8 • ANÁLISIS DE SISTEMAS MEDIANTE EL USO DE DICCIONARIOS DE DATOS 257E-15. Use el flujo de datos INSTALAR ACTUALIZACIÓN (INSTALL UPDATE) para saltar al (y crear el) REGISTRO DEACTUALIZACIÓN DE INSTALACIÓN (INSTALL UPDATE RECORD). Provea una definición con base en la infor-mación suministrada en el problema anterior. Escriba los siguientes elementos:NÚMERO DE INVENTARIO DE HARDWARE (HARDWARE INVENTORY NUMBER) (clave primaria)UBICACIÓN DE CAMPUS (CAMPUS LOCATION)DISCO DURO (HARD DRIVE)INTERVALO DE MANTENIMIENTO (MAINTENANCE INTERVAL)FECHA EN QUE SE INSTALÓ (DATE INSTALLED)E-16. Cree la descripción del flujo de datos para la LISTA DE INSTALACIÓN DE SOFTWARE (SOFTWARE INSTALLA-TION LIST). Este flujo contiene información sobre paquetes de software específicos y las máquinas en las que se debeinstalar el software. La composición debe incluir el LISTADO DE INSTALACIÓN DE SOFTWARE (SOFTWAREINSTALLATION LISTING), una estructura de datos.E-17. Use la LISTA DE INSTALACIÓN DE SOFTWARE para saltar al (y por lo tanto crear el) LISTADO DE INSTALACIÓNDE SOFTWARE. Los elementos en el listado son:NÚMERO DE INVENTARIO DE SOFTWARE (SOFTWARE INVENTORY NUMBER)TÍTULO (TITLE)NÚMERO DE VERSIÓN (VERSION NUMBER)HARDWARE INVENTORY NUMBER (NÚMERO DE INVENTARIO DE HARDWARE)UBICACIÓN DE CAMPUS (CAMPUS LOCATION)UBICACIÓN DE SALA (ROOM LOCATION)E-18. Modifique e imprima el elemento SUBTOTAL DE HARDWARE (HARDWARE SUBTOTAL). Cambie el tipo a Deci-mal, la longitud a 7.2 y la imagen a Z, ZZZ, ZZ9.99.E-19. Modifique el elemento TIPO DE COMPUTADORA (COMPUTER TYPE). La descripción debería ser: el tipo físico decomputadora. Valores y significados (Values & Meanings) debe contener: L—Laptop, D—Desktop, N—Netbook,P—Portátil. El tipo es Char con una Longitud (Length) de 1, y una Imagen y Visualización (Picture and Display) de X.No debe permitir un valor nulo.E-20. Modifique e imprima el elemento NOMBRE DEL DEPARTAMENTO (DEPARTMENT NAME). Cree un alias deNOMBRE DEPARTAMENTO PERSONAL (STAFF DEPARTMENT NAME). En el área Notes escriba el siguientecomentario: Tabla de códigos: Tabla Departamento. El tipo debe ser Character, la longitud 25 y la imagen X(25).E-21. Cree las siguientes descripciones de elementos. Use los valores que se suministran en la tabla. Cree nombres y definicio-nes alternativas con base en su comprensión del elemento.E-22. Use la herramienta Repository Reports de Visible Analyst para producir los siguientes informes y matrices, ya sea alimprimir los informes o ver una vista previa de los mismos mediante su navegador Web. Se listan los criterios de seleccióndel cuadro de diálogo Repository Reports, separados con una barra diagonal (/). Explique en un párrafo en dónde sepuede usar efectivamente la información producida.Nombre NÚMERO DE ORDEN DE COMPRA DESCRIPCIÓN DEL PROBLEMATipo Carácter CarácterLongitud 7 70Imagen 9999999 X(70)Nombre COSTO TOTAL COMPUTADORA FECHA DE SIGUIENTE MANTENIMIENTOPREVENTIVOTipo Numérico FechaLongitud 7.2 8Imagen Z, ZZZ, ZZ9,99 Z9/99/9999Notas La FECHA DE SIGUIENTE MANTENIMIENTOPREVENTIVO se calcula al sumar el INTERVALO DEMANTENIMIENTO a la FECHA DEL ÚLTIMOMANTENIMIENTO PREVENTIVONombre NÚMERO TELEFÓNICO ESTADO DE REPARACIÓNTipo Carácter CarácterLongitud 7 1Imagen 999-9999 XNotas Tabla de códigos: Tabla ReparaciónPredeterminado Cwww.xlibros.com
258 PARTE III • EL PROCESO DE ANÁLISISa. Data Flow/Cross-Reference Listing/Data Element/Entire Projectb. Data Flow/Cross-Reference Listing/Data Structure/Entire Projectc. Record Contains Element (One Level) Matrixd. Data Flow/Single-Entry Listing/Software Master—Normalizede. Data Flow/Diagram Location Matrix/Data Stores versus Diagramsf. Data Flow/Composition Matrix/Data Elements versus Data Flowsg. Data Flow/Composition Matrix/Data Elements versus Data Structuresh. Data Flow/Composition Matrix/Data Elements versus Data StoresE-23. Use la herramienta Report Query de Visible Analyst para producir los siguientes informes. Explique en un enunciadoqué información le provee el informe.a. El informe Undefined Elementsb. El informe Elements without Picturesc. El informe Coded Elementsd. El informe Any Item with ComponentsE-24. Use Visible Analyst para imprimir un informe sintetizado para todos los componentes de flujo de datos que no tenganuna descripción. (Sugerencia: Haga clic en el botón de opción No Descriptive Info.).E-25. Use Visible Analyst para imprimir un informe sintetizado para todos los componentes de flujo de datos que no estén enun diagrama. (Sugerencia: Haga clic en el botón de opción No Location References.).E-26. Use Visible Analyst para imprimir un informe detallado para todos los elementos. Incluya sólo la información física,además de los valores y los significados (sugerencia: haga clic en el botón Fields y después en el botón Invert; despuésseleccione los campos que desee imprimir). ¿Por qué sería útil este informe para el analista?Los ejercicios en los que se antepone un icono www indican material de valor agregado disponible en el sitio Web www.pearsonhighered.com/kendall. Los estudiantes pueden descargar un archivo de muestra de Microsoft Visio, Visible Analyst, Microsoft Project o Microsoft Access quepueden usar para completar los ejercicios.www.xlibros.com
259C A P Í T U L O 9Especificacionesde los procesos y decisionesestructuradasOBJETIVOS DE APRENDIZAJEAl completar este capítulo usted podrá:1. Comprender el propósito de las especificaciones de los procesos.2. Reconocer la diferencia entre las decisiones estructuradas y las semiestructuradas.3. Usar español estructurado, tablas y árboles de decisión para analizar, describir ydocumentar las decisiones estructuradas.4. Elegir un método apropiado para analizar las decisiones estructuradas y crearespecificaciones de los procesos.El analista de sistemas que se enfoca en las especificaciones de los procesos ylas decisiones estructuradas tiene muchas opciones para documentarlasy analizarlas. En los capítulos 7 y 8 vimos procesos como VERIFICAR Y CALCU-LAR CUOTAS, pero no explicamos la lógica necesaria para ejecutar estastareas. Los métodos disponibles para documentar y analizar la lógica de lasdecisiones incluyen español estructurado, tablas y árboles de decisión. Esimportante ser capaces de reconocer las decisiones lógicas y estructuradas que ocurren en unaempresa y cómo podemos diferenciarlas de las decisiones semiestructuradas que tienden ainvolucrar el juicio humano. Así, es imprescindible reconocer que las decisiones estructuradas seprestan particularmente bien al análisis con métodos sistemáticos que promueven la integridad,precisión y comunicación.GENERALIDADES DE LAS ESPECIFICACIONES DE LOS PROCESOSPara determinar los requerimientos humanos de información de una estrategia de análisis dedecisiones, el analista de sistemas debe primero determinar los objetivos de los usuarios juntocon los objetivos de la organización, ya sea mediante el uso de una metodología arriba-abajoo una metodología orientada a objetos. El analista de sistemas debe comprender los principiosde las organizaciones, además de contar con un conocimiento práctico sobre las técnicas derecopilación de datos. La metodología arriba-abajo es imprescindible, ya que todas las decisio-nes humanas en la organización deben estar relacionadas, al menos en forma indirecta, con losobjetivos generales de toda la organización.Las especificaciones de los procesos (a las que algunas veces se les denomina mini-especifi-caciones, debido a que son una pequeña parte de las especificaciones totales del proyecto) se creanpara procesos primitivos en un flujo de diagrama de datos, así como para algunos procesos de ni-vel más alto que se expanden en un diagrama hijo. También se pueden crear para los métodos declases en el diseño orientado a objetos y, en un sentido más general, para los pasos en un caso de uso(como se ve en los capítulos 2 y 10). Estas especificaciones explican la lógica de la toma de decisio-nes y las fórmulas que transformarán la entrada del proceso en su salida. Cada elemento derivadodebe tener lógica de proceso para mostrar cómo se produce desde los elementos base u otros ele-mentos derivados creados con anterioridad que actúen como entrada para el proceso primitivo.www.xlibros.com
260 PARTE III • EL PROCESO DE ANÁLISISLos tres objetivos al producir especificaciones de procesos son:1. Reducir la ambigüedad del proceso. Este objetivo obliga al analista a aprender los detalles acerca de laforma en que trabaja el proceso. Hay que detectar las áreas imprecisas, anotarlas y consolidarlas para todaslas especificaciones de los procesos. Estas observaciones forman una base y proveen las preguntas para lasentrevistas de seguimiento con la comunidad de usuarios.2. Obtener una descripción precisa de lo que se va a lograr, que por lo general se incluye en un paquete deespecificaciones para el programador.3. Validar el sistema de diseño. Este objetivo incluye asegurar que un proceso tenga todo el flujo de datos deentrada necesario para producir la salida. Además, todas las entradas y salidas se deben representar en eldiagrama de flujo de datos.Usted se encontrará con muchas situaciones en las que no se hayan creado las especificaciones de los proce-sos. Algunas veces el proceso es muy simple o ya existe el código de computadora. Hay que tomar nota de estaeventualidad en la descripción del proceso y no se requiere ningún diseño adicional. Las categorías o procesosque por lo general no requieren especificaciones son:1. Procesos que representan entrada o salida física, como lectura y escritura. Por lo general estos procesosrequieren sólo una lógica simple.2. Procesos que representan una validación de datos simple, lo cual por lo general es bastante fácil de lograr.Los criterios de edición se incluyen en el diccionario de datos y se incorporan en el código fuente decomputadora. Se pueden producir especificaciones de procesos para una edición compleja.3. Procesos que utilizan código escrito con anterioridad. Comúnmente estos procesos se incluyen en un sistemacomo procedimientos, métodos y funciones, o en bibliotecas de clases (que se pueden comprar o estándisponibles en forma gratuita a través de Web).Estos bloques son código de programa de computadora que se almacena en el sistema computarizado. Porlo general realizan una función general del sistema, como validar una fecha o un dígito de verificación. Estossubprogramas de propósito general se escriben y documentan sólo una vez, pero forman una serie de bloquesde construcción que se pueden usar en muchos sistemas en toda la organización. Por ende, estos subprogramasaparecen como procesos en muchos diagramas de flujo de datos (o como métodos de clases, lo cual veremos enel capítulo 10).Formato de especificación de procesoLas especificaciones de procesos vinculan a un proceso con el diagrama de flujo de datos y también con eldiccionario de datos, como se muestra en la figura 9.1. Cada especificación de proceso se debe introducir en unformulario separado o en la pantalla de una herramienta CASE, como la que se usa para Visible Analyst y semuestra en el caso de la CPU al final de este capítulo. Debe introducir la siguiente información:1. El número del proceso, que debe coincidir con el ID del proceso del diagrama de flujo de datos. Estaespecificación permite a un analista trabajar en cualquier proceso o revisarlo, además de que puede localizarcon facilidad el diagrama de flujo de datos que contiene el proceso.2. El nombre del proceso, que además debe ser el mismo que el nombre mostrado en el símbolo del proceso enel diagrama de flujo de datos.3. Una descripción breve de lo que logra el proceso.4. Una lista de flujos de datos de entrada, que utilice los nombres que se encuentran en el diagrama de flujode datos. Los nombres de los datos utilizados en la fórmula o lógica deben coincidir con los del diccionario dedatos para asegurar la consistencia y la buena comunicación.5. Los flujos de datos de salida, que también utilicen los nombres del diagrama de flujo de datos y deldiccionario de datos.6. Una indicación del tipo de proceso: por lotes, en línea o manual. Todos los procesos en línea requierendiseños de pantallas y todos los procesos manuales deben tener procedimientos bien definidos para losempleados que realizan las tareas del proceso.7. Si el proceso utiliza código escrito con anterioridad, incluya el nombre del subprograma o función quecontiene ese código.8. Una descripción de la lógica del proceso que establece la política y las reglas de negocios en lenguajecotidiano, no en lenguaje de seudocódigo de computadora. Las reglas de negocios son los procedimientos, otal vez un conjunto de condiciones o fórmulas, que permiten a una empresa operar su negocio. La definiciónanticipada del problema (como vimos en el capítulo 3) que usted completó en un principio puede proveer unpunto de inicio para esta descripción. Los formatos de las reglas de negocios comunes son: Definiciones de los términos de negocios. Condiciones y acciones de negocios.www.xlibros.com
CAPÍTULO 9 • ESPECIFICACIONES DE LOS PROCESOS Y DECISIONES ESTRUCTURADAS 261 Restricciones de integridad de los datos. Derivaciones matemáticas y funcionales. Inferencias lógicas. Secuencias de procesamiento. Relaciones entre los hechos acerca de la empresa.9. Si no hay suficiente espacio en el formulario para una descripción completa en español estructurado, o sihay una tabla o árbol de decisión que describa la lógica, incluya el nombre de la tabla o árbolcorrespondiente.10. Haga una lista de todos los problemas sin resolver, las porciones incompletas de lógica o cualquier otracuestión relacionada. Estas cuestiones forman la base de las preguntas utilizadas para las entrevistas deseguimiento con los usuarios o expertos de negocios que usted agregó a su equipo del proyecto.Hay que introducir estos elementos para completar un formulario de especificación de proceso, el cual incluyeel número del proceso, su nombre o ambos elementos del diagrama de flujo de datos, así como los otros ochoelementos que se muestran en el ejemplo de World’s Trend (figura 9.2). Cabe mencionar que si completamos esteformulario con el mayor detalle posible, será más fácil vincular el proceso con el diagrama de flujo de datos y eldiccionario de datos.ESPAÑOL ESTRUCTURADOCuando la lógica del proceso involucra fórmulas o iteraciones, o cuando las decisiones estructuradas no soncomplejas, una técnica apropiada para analizar el proceso de decisión es el uso del español estructurado. Comosu nombre indica, el español estructurado se basa en 1) la lógica estructurada, o las instrucciones organizadas enprocedimientos anidados y agrupados, y 2) las instrucciones en español simple tales como sumar, multiplicar ymover. Un problema escrito se puede transformar en español estructurado si ponemos las reglas de decisión en susecuencia apropiada y usamos la convención de las instrucciones IF-THEN-ELSE a lo largo del proceso.Cómo escribir español estructuradoPara escribir español estructurado es conveniente utilizar las siguientes convenciones:1. Expresar toda la lógica en términos de uno de estos cuatro tipos: estructuras secuenciales, estructuras dedecisión, estructuras de casos o iteraciones (en la figura 9.3 podrá ver ejemplos).Formulario deespecificaciónde procesoÁrbol dedecisiónXPQT20 40501030ProcesoDiagrama de flujo de datos Especificación y lógica de procesoEspañolestructuradoTabla dedecisiónReglas2' 3' 4'1'YY Y YXX XNNI F c o n s t r u c c i ó nT H E N d e d u cE N D I FI F r e e m p l a z oT H E N s u m a r 1E N D I FI F p r o p i e t a r i o e l i g i óT H E N s u m a r 1E N D I FFIGURA 9.1Cómo se relacionan lasespecificaciones de los procesoscon el diagrama de flujo de datos.www.xlibros.com
262 PARTE III • EL PROCESO DE ANÁLISISFormulario de especificación de procesoNúmeroNombreDescripciónFlujo de datos de entradaFlujo de datos de salidaTipo de procesoEn línea Por lotes ManualNombre de subprograma/funciónLógica del procesoReferir a: Nombre:Español estructurado Tabla de decisión Árbol de decisiónCuestiones sin resolver:1.3Determinar cantidad disponibleDeterminar si un artículo está disponible para su venta. Si no está disponible,crear un registro de artículo pendiente. Determinar la cantidad disponible.Artículo válido del proceso 1.2Cantidad disponible del registro del artículoArtículo disponible (Número de artículo + Cantidad vendida) para los procesos 1.4 y 1.5Artículo pendiente a control de inventarioIF la Cantidad artículo pedido es mayor que Cantidad disponibleTHEN Mover Cantidad artículo pedido a Cantidad disponible artículoMover Número artículo pedido a Número artículo disponibleELSERestar Cantidad disponible de Cantidad artículo pedidopara producir Cantidad pendienteMover Cantidad pendiente a Registro artículos pendientesMover Número artículo a Registro artículos pendientesDO escribir Registro pendienteMover Cantidad disponible a Cantidad disponible artículoMover Número artículo pedido to Número artículo disponibleENDIF¿Habrá que tomar en cuenta la cantidad que está en el pedido para esteartículo? Si combinamos esto con la fecha esperada de la llegada de los artículos en el pedido,¿cambiaría la forma en que se calcula la cantidad?FIGURA 9.2Un ejemplo de formulario de especificación de procesocompletado para determinar si un artículo está disponible.2. Usar y poner en mayúsculas las palabras clave aceptadas como IF, THEN, ELSE, DO, DO WHILE, DOUNTIL y PERFORM.3. Aplicar sangría a los bloques de instrucciones para mostrar su jerarquía (anidamiento) con claridad.4. Cuando haya palabras o frases definidas en un diccionario de datos (como en el capítulo 8), subraye esaspalabras o frases para indicar que tienen un significado especializado y reservado.5. Tenga cuidado al usar “y” y “o”, y evite la confusión al diferenciar entre “mayor que” y “menor o igual que”y con las relaciones de igualdad. “A y B” significa tanto A como B; “A” o “B” significa que puede ser A o B,pero no ambas. Aclare las instrucciones lógicas ahora, en vez de esperar hasta la etapa de codificación delprograma.www.xlibros.com
CAPÍTULO 9 • ESPECIFICACIONES DE LOS PROCESOS Y DECISIONES ESTRUCTURADAS 263Tipo de español estructuradoEstructura secuencialUn bloque de instrucciones en lasque no ocurre bifurcaciónAcción #1Acción #2Acción #3IF condición A es verdaderaTHEN implementar Acción AELSE implementar Acción BENDIFIF Caso # 1 implementar Acción #1ELSE IF Caso #2Implementar Acción #2ELSE IF Caso #3Implementar Acción #3ELSE IF Caso #4Implementar Acción #4ENDIFEstructura de decisiónSólo SI (IF) una condición esverdadera, completar las siguientesinstrucciones; en caso contrario,ir al ELSEEstructura de casoUn tipo especial de estructura dedecisión en la que los casos sonmutuamente excluyentes (si ocurreuno, los otros no pueden ocurrir)IteraciónBloques de instrucciones que serepiten hasta terminarDO WHILE haya clientes.Acción #1ENDDOEjemplo FIGURA 9.3Ejemplos de la lógica expresadaen una estructura secuencial, unaestructura de decisión, unaestructura de caso y una iteración.UN EJEMPLO DE ESPAÑOL ESTRUCTURADO El siguiente ejemplo demuestra cómo se transforma un procedimientohablado para procesar reclamaciones médicas en español estructurado:Procesamos todas nuestras reclamaciones de esta forma. Primero determinamos si el solicitante hapresentado alguna reclamación antes; si no es así, establecemos un nuevo registro. Después se actualizanO P O R T U N I D A D D E C O N S U L T O R Í A 9 . 1Kit Chen Kaboodle, Inc.“No quiero que se agiten, pero creo que necesitamos dar un vis-tazo a nuestras políticas de pedidos incompletos”, dice Kit Chen. “Nome gustaría presionar a nuestros clientes. Como saben de antemano,Kit Chen Kaboodle es una empresa de venta de utensilios de cocina através de Web y por correo convencional, que se especializa en ‘kitschelegante para cocinas’ como dice nuestro catálogo más reciente. Esdecir, tenemos todo lo necesario para la cocina gourmet y entreteni-miento: molinillos de nuez moscada, batidoras de papas, separadoresde huevos, jeringas para pavos, manteles individuales con gatos, bande-jas para cubos de hielo en forma de tréboles y mucho más.“He aquí la forma en que hemos estado manejando los pedidosincompletos. Buscamos en nuestro archivo de pedidos incompletosde Internet, así como las ventas de pedidos por correo, una vez porsemana. Si el pedido se completó esta semana, eliminamos el regis-tro y el resto es pan comido. Si no hemos escrito al cliente en cuatrosemanas, les enviamos esta linda tarjeta con un chef asomándose alhorno, diciendo: ‘No está listo todavía’ (es una notificación de quesu artículo sigue pendiente)”.“Si cambió la fecha del pedido pendiente a más de 45 días apartir de hoy, enviamos un aviso. Pero si la mercancía es de tempo-rada (como con las bolsas para dulces de Halloween, los cortadoresde galletas de Navidad o los moldes de pasteles del día de San Va-lentín) y la fecha del pedido pendiente es de 30 días o más, envia-mos un aviso con un chef mirando su temporizador”.“Si la fecha del pedido pendiente cambió y no hemos enviadouna tarjeta en las últimas dos semanas, enviamos una tarjeta con unchef revisando su receta. Si la mercancía ya no está disponible,enviamos un aviso (con todo y el chef llorando en la esquina) yeliminamos el registro. No hemos empezado a usar el correo elec-trónico en vez de las tarjetas enviadas por correo, pero me gustaríahacerlo”.“Gracias por escuchar todo esto. Creo que tenemos los ingre-dientes apropiados para una buena política; sólo necesitamos mez-clarlos y cocinar algo especial”.Como usted es el analista de sistemas que Kit contrató, repasela narrativa de cómo Kit Chen Kaboodle, Inc. Maneja los pedidosincompletos. Dibuje cuadros alrededor de cada acción que men-ciona Kit y circule cada condición que vaya surgiendo. Haga unalista de las ambigüedades que quiera aclarar en una entrevista pos-terior y después escriba cinco preguntas a tratar en la entrevista.www.xlibros.com
264 PARTE III • EL PROCESO DE ANÁLISISO P O R T U N I D A D D E C O N S U L T O R Í A 9 . 2Estructura para amasarKit Chen se puso a la altura de las circunstancias y respondió a suspreguntas relacionadas con el manejo de los pedidos incompletos enKit Chen Kaboodle, Inc. Con base en esas respuestas y las suposicio-nes que tenga que hacer, vacíe la narrativa de Kit (de la Oportunidadde consultoría 9.1) en un nuevo molde; vuelva a escribir la receta paramanejar pedidos incompletos en español estructurado. Describa enun párrafo cómo podría cambiar este proceso si para las notificacio-nes utilizara correo electrónico en vez de correo convencional.DO WHILE haya reclamaciones restantesIF solicitante no ha presentado una reclamaciónTHEN establecer un nuevo registro de solicitanteELSE continuarAgregar reclamación a reclamación AAFIF solicitante tiene plan de póliza ATHEN IF deducible de $100.00 no se ha cumplidoTHEN restar deducible no cumplido a reclamaciónActualizar deducibleELSE continuarENDIFRestar copago de 40% de reclamación a reclamaciónELSE IF solicitante tiene plan de póliza BTHEN IF deducible de $50.00 no se ha cumplidoTHEN restar deducible no cumplido a reclamaciónActualizar deducibleELSE continuarENDIFRestar copago de 60% de reclamación a reclamaciónELSE continuarELSE escribir mensaje de error en planENDIFIF reclamación es mayor que ceroTHEN imprimir chequeENDIFImprimir resumen para solicitanteActualizar cuentasENDDOFIGURA 9.4Español estructurado para elsistema de procesamiento dereclamaciones médicas. Loselementos subrayados indican quese definieron los términos en eldiccionario de datos.los totales de las reclamaciones para el año. Luego determinamos si un solicitante tiene la póliza A o B,que difieren en los deducibles y los copagos (el porcentaje de la reclamación que tienen que pagar lossolicitantes). Para ambas pólizas revisamos si se cumple con el deducible ($100 para la póliza A y $50para la póliza B). Si no se cumple con el deducible, aplicamos la reclamación al deducible. En otro pasose ajusta el copago; restamos el porcentaje que paga el solicitante (40 por ciento para la póliza A y 60 porciento para la póliza B) de la reclamación. Después emitimos un cheque si el solicitante va a recibirdinero, imprimimos un resumen de la transacción y actualizamos nuestras cuentas. Hacemos esto hastaque se procesan todas las reclamaciones de ese día.Al examinar las declaraciones anteriores podemos observar algunas estructuras de secuencia simples, en especialal inicio y al final. Hay un par de estructuras de decisión y lo más apropiado es anidarlas, para lo cual primerowww.xlibros.com
CAPÍTULO 9 • ESPECIFICACIONES DE LOS PROCESOS Y DECISIONES ESTRUCTURADAS 265hay que determinar qué póliza (A o B) usar y después hay que restar los deducibles y copagos correctos. Elúltimo enunciado apunta a una iteración: HACER HASTA (DO UNTIL) que todas las reclamaciones se hayanprocesado o HACER MIENTRAS (DO WHILE) haya reclamaciones pendientes.Si consideramos que es posible anidar las estructuras de decisión de acuerdo con los planes de las pólizas,podemos escribir el español estructurado para el ejemplo anterior (vea la figura 9.4). A medida que empiecea trabajar en el español estructurado descubrirá que una parte de la lógica y las relaciones que parecían clarasuna vez son en realidad ambiguas. Por ejemplo, ¿debemos agregar la reclamación a la reclamación del año a la fecha(AAF) antes o después de actualizar el deducible? ¿Es posible que ocurra un error si se almacena algo que nosea la póliza A o B en el registro del solicitante? ¿A qué restamos el 40 por ciento de la reclamación? Hay queaclarar estas ambigüedades en este punto.Además de la obvia ventaja de aclarar la lógica y las relaciones que se encuentran en los lenguajes humanos,el español estructurado tiene otra ventaja importante: es una herramienta de comunicación. Podemos enseñar alos usuarios en la organización el español estructurado para que lo comprendan, por lo que si es importante lacomunicación, el español estructurado es una alternativa viable para el análisis de decisiones.Diccionario de datos y especificaciones de procesosTodos los programas de computadora se pueden codificar mediante el uso de tres construcciones básicas: secuen-cia, selección (IF...THEN...ELSE y la estructura de caso), e iteración o ciclo. El diccionario de datos indicacuáles de estas construcciones se deben incluir en las especificaciones de los procesos.Si el diccionario de datos para el flujo de datos de entrada y salida contiene una serie de campos sin ningunaiteración —{ }— o selección —[ ]—, la especificación de proceso contendrá una secuencia simple de instruc-ciones, como MOVER, SUMAR y RESTAR. Consulte el ejemplo de un diccionario de datos para el ESTADODE CUENTA DE ENVÍO que se muestra en la figura 9.5. Cabe mencionar que el diccionario de datos para elESTADO DE CUENTA DE ENVÍO tiene los elementos NÚMERO DE PEDIDO, FECHA DEL PEDIDO yEstado de cuenta de envío = Número de pedido +Fecha del pedido +Número de cliente +Nombre del cliente +Dirección del cliente +5{Líneas de artículos del pedido} +Número de artículos +Total de mercancía +(Impuestos) +Envío y manejo +Total del pedidoPrimer nombre +(Inicial segundo nombre) +Apellido paternoCalle +(Departamento) +Ciudad +Estado +CP +(Expansión CP) +(País)Número de artículo +Cantidad ordenada +Cantidad pendiente +Descripción del artículo +Descripción del tamaño +Descripción del color +Precio unitario +Monto extendido +Nombre del cliente =Dirección =Líneas de artículos del pedido =1FIGURA 9.5Estructura de datos para un estadode cuenta de envío de World’sTrend.www.xlibros.com
266 PARTE III • EL PROCESO DE ANÁLISISNÚMERO DE CLIENTE como simples campos secuenciales. La lógica correspondiente, que se muestra en laslíneas 3 a la 5 en el correspondiente español estructurado en la figura 9.6, consiste de instrucciones MOVERsimples.Una estructura de datos con elementos opcionales contenidos entre paréntesis o elementos ya sea/o conteni-dos entre corchetes, tendrán su correspondiente instrucción IF...THEN...ELSE en la especificación del proceso.Además, si un monto tal como CANTIDAD PENDIENTE es mayor que cero, la lógica subyacente será IF...THEN...ELSE. La iteración, que se indica mediante llaves en una estructura de datos, debe tener una instruccióncorrespondiente DO WHILE, DO UNTIL o PERFORM UNTIL para controlar los ciclos en la especificación delproceso. La estructura de datos para LÍNEAS DE ARTÍCULOS DEL PEDIDO permite hasta cinco artículos enel ciclo. Las líneas 8 a la 17 muestran las instrucciones contenidas en el DO WHILE hasta el END DO necesa-rias para producir las diversas LÍNEAS DE ARTÍCULOS DEL PEDIDO.TABLAS DE DECISIÓNUna tabla de decisión es una tabla de filas y columnas, separada en cuatro cuadrantes, como se muestra en la figura9.7. El cuadrante superior izquierdo contiene la(s) condición(es); el cuadrante superior derecho contiene las alter-nativas de condiciones. La mitad inferior de la tabla contiene las acciones a realizar a la izquierda y las reglas paraejecutar las acciones a la derecha. Cuando se utiliza una tabla de decisión para determinar la acción a realizar, lalógica se mueve en sentido de las manecillas del reloj, partiendo desde el cuadrante superior izquierdo.Español estructuradoGET Registro de pedidoGET Registro de clienteMover Número de pedido a estado de cuenta de envíoMover Fecha del pedido a Estado de cuenta de envíoMover Número de cliente a Estado de cuenta de envíoDO aplicar formato a Nombre del cliente (dejar sólo un espacio entre Primer/Segundo/Apellido)DO aplicar formato a las líneas de Dirección del clienteDO WHILE haya artículos para el pedidoGET Registro de artículoDO Aplicar formato a Línea de artículoMultiplicar Precio unitario por Cantidad ordenada para obtener Monto extendidoMover Monto extendido a Líneas de artículos del pedidoSumar Monto extendido a Total de mercancíaIF Cantidad pendiente es mayor que ceroMover Cantidad pendiente a Líneas de artículos del pedidoENDIFENDDOMover Total de mercancía a Estado de cuenta de envíoMover 0 a ImpuestosIF Estado es igual a CTMultiplicar Total de mercancía por Tasa de impuestos para obtener ImpuestoENDIFMover Impuesto a Estado de cuenta de envíoDO calcular Envío y manejoMover Envío y manejo a Estado de cuenta de envíoSumar Total de mercancía, Impuestos y Envío y manejo para obtener Total del pedidoMover Total del pedido a Estado de cuenta de envíoGET Registro de pedidoGET Registro de clienteMover Número de pedido a estado de cuenta de envíoMover Fecha del pedido a Estado de cuenta de envíoMover Número de cliente a Estado de cuenta de envíoDO aplicar formato a Nombre del cliente (dejar sólo un espacio entre Primer/Segundo/Apellido)DO aplicar formato a las líneas de Dirección del clienteDO WHILE haya artículos para el pedidoGET Registro de artículoDO Aplicar formato a Línea de artículoMultiplicar Precio unitario por Cantidad ordenada para obtener Monto extendidoMover Monto extendido a Líneas de artículos del pedidoSumar Monto extendido a Total de mercancíaIF Cantidad pendiente es mayor que ceroMover Cantidad pendiente a Líneas de artículos del pedidoENDIFENDDOMover Total de mercancía a Estado de cuenta de envíoMover 0 a ImpuestosIF Estado es igual a CTMultiplicar Total de mercancía por Tasa de impuestos para obtener ImpuestoENDIFMover Impuesto a Estado de cuenta de envíoDO calcular Envío y manejoMover Envío y manejo a Estado de cuenta de envíoSumar Total de mercancía, Impuestos y Envío y manejo para obtener Total del pedidoMover Total del pedido a Estado de cuenta de envíoAplique formato al Estado de cuenta de envío. Una vez que haya aplicado formato a cadalínea del estado de cuenta, escriba la línea de envío.1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.FIGURA 9.6Español estructurado para crear elestado de cuenta de envío paraWorld’s Trend.www.xlibros.com
CAPÍTULO 9 • ESPECIFICACIONES DE LOS PROCESOS Y DECISIONES ESTRUCTURADAS 267Condiciones y accionesCondicionesAccionesReglasAlternativas de condicionesEntradas de accionesFIGURA 9.7El formato estándar utilizado parapresentar una tabla de decisión.Suponga que una tienda desea ilustrar su política sobre compras que no son en efectivo. La empresa podríahacerlo mediante el uso de una tabla de decisión simple, como se muestra en la figura 9.8. Cada una de las trescondiciones (venta menor de $50, paga con cheque y usa tarjetas de crédito) sólo tiene dos alternativas. Las dosalternativas son Y (sí, es verdadero) o N (no, no es verdadero). Es posible realizar cuatro acciones:1. Completar la venta después de verificar la firma.2. Completar la venta. No se necesita firma.3. Llamar al supervisor para la aprobación.4. Comunicarse vía electrónica con el banco para la autorización de la tarjeta de crédito.El ingrediente final que hace que valga la pena usar la tabla de decisión es el conjunto de reglas para cadauna de las acciones. Las reglas son las combinaciones de las alternativas de condiciones que precipitan una ac-ción. Por ejemplo, la regla 3 dice:El ejemplo anterior presenta un problema con cuatro conjuntos de reglas y cuatro posibles acciones, peroCondiciones y accionesMenor de $50Paga con cheque con dos formas de IDUsa tarjeta de créditoCompletar la venta después de verificar la firma.Completar la venta. No se necesita firma.Llamar al supervisor para la aprobación.Comunicarse vía electrónica con el banco para la autorización de la tarjeta de crédito.Reglas1Y Y N NY N Y NNXYXNXYX2 3 4FIGURA 9.8Uso de una tabla de decisión parailustrar la política de una tienda encuanto al pago de los clientes concuatro conjuntos de reglas y cuatroposibles acciones.eso es sólo una coincidencia. El siguiente ejemplo demuestra que con frecuencia las tablas de decisión se hacenextensas y complicadas.Desarrollar tablas de decisiónPara construir tablas de decisión, el analista necesita determinar el tamaño máximo de la tabla; eliminar cual-quier situación imposible, inconsistencia o redundancia, y simplificar la tabla lo más que pueda. Los siguientespasos proveen al analista un método esquemático para desarrollar tablas de decisión:1. Determinar el número de condiciones que pueden afectar la decisión. Combinar filas que se traslapan, comolas condiciones mutuamente excluyentes. El número de condiciones se convierte en el número de filas en lamitad superior de la tabla de decisión.IF N (la venta total NO es menor de $50.00)ANDIF Y (el cliente pagó con cheque y tuvo dos formas de ID)ANDIF N (el cliente no usó una tarjeta de crédito)THENDO X (llamar al supervisor para la aprobación).www.xlibros.com
268 PARTE III • EL PROCESO DE ANÁLISIS2. Determinar el número de acciones posibles que se pueden realizar. Ese número se convierte en el número defilas en la mitad inferior de la tabla de decisión.3. Determinar el número de alternativas de condiciones para cada condición. En la forma más simple de latabla de decisión, habría dos alternativas (Y o N) para cada condición. En una tabla con entradas extendidas,podría haber muchas alternativas para cada condición. Asegúrese de incluir todos los valores posibles para lacondición. Por ejemplo, si el enunciado de un problema que calcule el descuento de un cliente menciona unrango de valores para un total del pedido de $100 a $1,000 y otro rango de más de $1,000, el analista debetener en cuenta que también debe agregar el rango de 0 a $100 como una condición. Esto es cierto sobretodo cuando hay otras condiciones que se pueden aplicar al total de pedido de 0 a $100.4. Calcular el número máximo de columnas en la tabla de decisión, para lo cual hay que multiplicar el númerode alternativas para cada condición. Si hubiera cuatro condiciones y dos alternativas (Y o N) para cada una delas condiciones, habría 16 posibilidades, como se muestra a continuación:Condición 1:  2 alternativasCondición 2:  2 alternativasCondición 3:  2 alternativasCondición 4:  2 alternativas16 posibilidades5. Llenar las alternativas de condiciones. Empezar con la primera condición y dividir el número de columnasentre el número de alternativas para esa condición. En el ejemplo anterior hay 16 columnas y dosalternativas (Y o N), por lo que 16 dividido entre 2 es 8. Después hay que elegir una de las alternativas, porejemplo Y, y escribirla en las primeras ocho columnas; para terminar hay que escribir N en las ochocolumnas restantes, como se muestra a continuación:Condición 1: Y Y Y Y Y Y Y Y N N N N N N N NCondición 1: Y Y Y Y Y Y Y Y N N N N N N N NCondición 2: Y Y Y Y N N N NCondición 3: Y Y N NCondición 4: Y NCondición 1: Y YCondición 2: Y NAcción 1: X X6. Para completar la tabla, inserte una X donde las reglas sugieran ciertas acciones.7. Combine las reglas en las que sea aparente que una alternativa no marca una diferencia en el resultado. Porejemplo,Repita este paso para cada condición; utilice un subconjunto de la tabla,y continúe el patrón para cada condición:Condición 1 Y Y Y Y Y Y Y Y N N N N N N N NCondición 2: Y Y Y Y N N N N Y Y Y Y N N N NCondición 3: Y Y N N Y Y N N Y Y N N Y Y N NCondición 4: Y N Y N Y N Y N Y N Y N Y N Y Nse puede expresar como:Condición 1: YCondición 2: Acción 1: XEl guión [—] significa que la Condición 2 puede ser Y o N, y la acción se realizará de cualquier manera.8. Revise cualquier situación imposible, contradicción o redundancia en la tabla. Abundaremos sobre estoposteriormente.9. Vuelva a ordenar las condiciones y acciones (o incluso las reglas) si esto le ayuda a comprender mejor latabla de decisión.www.xlibros.com
CAPÍTULO 9 • ESPECIFICACIONES DE LOS PROCESOS Y DECISIONES ESTRUCTURADAS 269O P O R T U N I D A D D E C O N S U L T O R Í A 9 . 3Ahorrar un centavo en Citron Car Rental“Nos sentimos afortunados de ser tan populares. Creo que losclientes sienten que tenemos tantas opciones que ofrecerles quedeberían de rentar un automóvil de nosotros”, dice Ricardo Limon,quien dirige varios puntos de venta para Citron Car Rental. “Nues-tro eslogan es, ‘Nunca se sentirá exprimido en Citron’. Tenemoscinco tamaños de automóviles que listamos de la A a la E.”si su empresa tiene una cuenta con nosotros. También hay un des-cuento por membresía en cualquiera de los clubes de viajero fre-cuente operados por las aerolíneas corporativas. Cuando los clientesse acercan al mostrador, nos dicen el tamaño de automóvil que re-servaron y verificamos que lo tengamos disponible, listo para irse.Por lo general preguntan por los descuentos, y nosotros les pregun-tamos si desean un seguro y cuánto tiempo usarán el automóvil.Después calculamos su tarifa y les damos un recibo para que lofirmen ahí mismo”.Ricardo le ha pedido a usted que computarice el proceso defacturación para Citron, de manera que los clientes puedan recibir susautomóviles con rapidez sin errores de facturación. Dibuje una tablade decisión que represente las condiciones, alternativas de condicio-nes, acciones y reglas de acciones que usted deduzca de la narrativade Ricardo para guiar un proceso de facturación automatizado.Ricardo desea expandir la porción de comercio electrónico desu empresa al hacer que sea posible reservar un automóvil a travésdel sitio Web. Dibuje una tabla de decisión actualizada que muestreun 10 por ciento de descuento por reservar un auto a través del sitioWeb.A SubcompactoB CompactoC MedianoD GrandeE De lujo“La transmisión estándar sólo está disponible para A, B y C. Latransmisión automática está disponible para todos los automóviles”.Si un cliente reserva un subcompacto (A) y al llegar descubreque no tenemos uno, recibe una actualización gratuita al siguientetamaño, en este caso un compacto (B). Los clientes también recibenuna actualización del tamaño de automóviles que tengan reservadoUN EJEMPLO DE TABLA DE DECISIÓN La figura 9.9 es una ilustración de una tabla de decisión desarrolladamediante el uso de los pasos antes descritos. En este ejemplo, una empresa trata de mantener una lista de clientesde correo representativa. El objetivo es enviar sólo los catálogos para que los clientes compren la mercancíaanunciada en ellos.Los gerentes saben que ciertos clientes leales hacen pedidos de todos los catálogos y que algunas personas dela lista nunca hacen pedidos. Estos patrones de pedidos son fáciles de observar, pero es más difícil decidir cuálescatálogos enviar a los clientes que ordenan sólo de ciertos catálogos seleccionados. Una vez tomadas estas deci-siones, se construye una tabla de decisión para tres condiciones (C1: el cliente hizo un pedido del catálogo deotoño; C2: el cliente hizo un pedido del catálogo de Navidad y C3: el cliente hizo un pedido de un catálogo es-pecializado), cada una de las cuales tiene dos alternativas (Y o N). Se pueden tomar tres acciones (A1: enviar elcatálogo de Navidad de este año; A2: enviar el nuevo catálogo especializado y A3: enviar ambos catálogos).La tabla de decisión resultante tiene seis filas (tres condiciones y tres acciones) y ocho columnas (dos alternati-vas  dos alternativas  dos alternativas).Ahora hay que examinar la tabla de decisión para ver si se puede reducir. No hay condiciones mutuamenteexcluyentes, por lo que no es posible usar menos de tres filas de condiciones. No hay reglas que permitan laCondiciones y accionesEl cliente hizo un pedido del catálogo de otoño.El cliente hizo un pedido del catálogo de Navidad.El cliente hizo un pedido del catálogo especializado.Enviar el catálogo de Navidad de este año.Enviar el catálogo especializado.Enviar ambos catálogos.Reglas1 2 3 4 5 6 7 8Y Y Y Y N N N NY Y N N Y Y N NY NXXX XXX X XY N Y N Y NFIGURA 9.9Construcción de una tabla dedecisión para decidir qué catálogoenviar a los clientes que piden sólode catálogos seleccionados.www.xlibros.com
270 PARTE III • EL PROCESO DE ANÁLISIScombinación de acciones. Sin embargo, es posible combinar algunas de las reglas como se muestra en la figura9.10. Por ejemplo, las reglas 2, 4, 6 y 8 se pueden combinar debido a que todas tienen dos cosas en común:1. Nos sugieren enviar el catálogo de Navidad de este año.2. La alternativa para la Condición 3 siempre es N.No importa cuáles sean las alternativas para las primeras dos condiciones, por lo que es posible insertar guiones[—] en vez de Y o N.Las reglas restantes (1, 3, 5 y 7) no se pueden reducir a una sola regla debido a que restan dos acciones. Envez de ello podemos combinar las reglas 1 y 5; de igual forma podemos combinar las reglas 3 y 7.Verificar la integridad y precisiónEs esencial que verifique la integridad y precisión de sus tablas de decisión. Pueden ocurrir cuatro problemasprincipales al desarrollar tablas de decisión: que estén incompletas, que existan situaciones imposibles, contra-dicciones y redundancia.Es de suma importancia poder asegurar que todas las condiciones, alternativas de condiciones, acciones y re-glas de acción estén completas. Suponga que omitimos una condición importante (si un cliente hizo un pedido me-nor de $50) del problema de la tienda de catálogos que vimos antes. Esto provocaría que cambiara toda la tabla dedecisión, ya que habría que agregar una nueva condición, un nuevo conjunto de alternativas, una nueva acción y unao más nuevas reglas de acción. Suponga que la regla es: SI el cliente no ordenó más de $50, ENTONCES no enviarcatálogos. Se agregaría una nueva regla 4 a la tabla de decisión, como se muestra en la figura 9.11.Condiciones y accionesCondiciones y accionesReglasReglasEl cliente hizo un pedido del catálogo de otoño.El cliente hizo un pedido del catálogo de Navidad.El cliente hizo un pedido del catálogo especializado.Enviar el catálogo de Navidad de este año.Enviar el catálogo especializado.Enviar ambos catálogos.El cliente hizo un pedido del catálogo de otoño.El cliente hizo un pedido del catálogo de Navidad.El cliente hizo un pedido del catálogo especializado.Enviar el catálogo de Navidad de este año.Enviar el catálogo especializado.Enviar ambos catálogos.YYYYY YYYYYYYYY YNN NNN NNNNNNNNNXXXXXXXXXXX1 2 3 4 5 6 7 81' 2' 3'FIGURA 9.10Combinación de reglas parasimplificar la tabla de decisióncliente-catálogo.Condiciones y accionesReglasEl cliente hizo un pedido del catálogo de otoño.El cliente hizo un pedido del catálogo de Navidad.El cliente hizo un pedido del catálogo especializado.El cliente hizo un pedido de $50 o más.Enviar el catálogo de Navidad de este año.Enviar el catálogo especializado.Enviar ambos catálogos.No enviar ningún catálogo.YYY YYYNNNXXXX1' 2' 3' 4'FIGURA 9.11Al agregar una regla a la tabla dedecisión cliente-catálogo semodifica toda la tabla.www.xlibros.com
CAPÍTULO 9 • ESPECIFICACIONES DE LOS PROCESOS Y DECISIONES ESTRUCTURADAS 271Al construir tablas de decisión según lo indicado en los pasos anteriores, algunas veces podemos llegar aestablecer situaciones imposibles. En la figura 9.12 se muestra un ejemplo. La regla 1 no es factible, ya que unapersona no puede obtener más de $50,000 al año y menos de $2,000 mensuales por mes al mismo tiempo. Lasotras tres reglas son válidas. El problema pasó desapercibido debido a que la primera condición se midió en añosy la segunda en meses.Cuando las reglas sugieren distintas acciones pero satisfacen las mismas condiciones, ocurren contradic-ciones. La falla podría estar en la forma en que el analista construyó la tabla o en la información que recibió.A menudo ocurren contradicciones si se insertan guiones [—] incorrectamente en la tabla. La redundancia ocu-rre cuando conjuntos idénticos de alternativas requieren exactamente la misma acción. La figura 9.13 ilustra unacontradicción y una redundancia. El analista debe determinar qué es lo correcto y después resolver la contradic-ción o redundancia.Las tablas de decisión son una importante herramienta en el análisis de las decisiones estructuradas. Unaventaja importante de usar tablas de decisión en comparación con otros métodos es que las tablas ayudan al ana-lista a asegurar la integridad. Al usar tablas de decisión también se facilita la acción de verificar posibles errores,como las situaciones imposibles, contradicciones y redundancia. También existen los procesadores de tablas dedecisión, que reciben la tabla como entrada y proveen código de programa de computadora como salida.ÁRBOLES DE DECISIÓNLos árboles de decisión se utilizan cuando ocurren ramificaciones complejas en un proceso de decisión estruc-turado. Los árboles también son útiles cuando es imprescindible mantener una cadena de decisiones en unasecuencia específica. Aunque el nombre “árbol de decisión” se deriva de los árboles naturales, por lo generallos árboles de decisión se dibujan de lado, con la raíz en el lado izquierdo del papel; a partir de ahí el árbolse ramifica hacia la derecha. Esta orientación permite al analista escribir en las ramas para describir las con-diciones y acciones.A diferencia del árbol de decisión que se utiliza en la ciencia de la administración, el árbol del analista nocontiene probabilidades y resultados. En el análisis de sistemas, los árboles se utilizan principalmente para iden-tificar y organizar las condiciones y acciones en un proceso de decisión completamente estructurado.Condiciones y accionesSalario > $50,000/añoSalario < $2,000/mesAcción 1Acción 2Reglas1 2 3 4Y Y N NY N Y NÉsta es unasituaciónimposible.FIGURA 9.12Es importante verificar que latabla de decisión no tengasituaciones imposibles.Condiciones y accionesReglasYY YY YYYYYNNNNNNXXXX XXX1 2 3 4 5 6 7YNCondición 1Condición 2Condición 3Acción 1Acción 2Acción 3Contradicción RedundanciaFIGURA 9.13Es importante verificar que latabla de decisión no tengacontradicciones ni redundanciainadvertidas.www.xlibros.com
272 PARTE III • EL PROCESO DE ANÁLISISDibujar árboles de decisiónEs conveniente poder diferenciar entre las condiciones y las acciones al momento de dibujar árboles de decisión.Esta distinción es en especial relevante cuando las condiciones y acciones se llevan a cabo durante un periodo detiempo y su secuencia es importante. Para este fin hay que utilizar un nodo cuadrado para indicar una acción yun círculo para representar una condición. El uso de esta notación mejora la legibilidad del árbol, al igual que laacción de enumerar los círculos y cuadrados en forma secuencial. Piense en un círculo como si fuera un SI (IF),mientras que el cuadrado significa ENTONCES (THEN).Cuando hablamos sobre las tablas de decisión en una sección anterior, utilizamos un ejemplo de punto de ventapara determinar las acciones para aprobar las compras en una tienda de departamentos. Las condiciones incluían elmonto de la venta (menor a $50) y si el cliente pagaba con cheque o tarjeta de crédito. Las cuatro acciones posibleseran completar la venta después de verificar la firma; completar la venta sin necesidad de la firma; llamar al super-visor para la aprobación, o comunicarse vía electrónica con el banco para la autorización de la tarjeta de crédito. Lafigura 9.14 muestra cómo se puede dibujar este ejemplo como un árbol de decisión. Al dibujar el árbol hay que:1. Identificar todas las condiciones y acciones, junto con su orden y sincronización (si son críticas).2. Empezar a construir el árbol de izquierda a derecha; hay que asegurarnos de enlistar todas las alternativasposibles antes de avanzar a la derecha.El árbol simple es simétrico y las cuatro acciones al final son únicas, aunque un árbol no tiene que ser simétrico.La mayoría de los árboles de decisión tienen condiciones con un número distinto de ramificaciones. Ademáspueden aparecer acciones idénticas más de una vez.O P O R T U N I D A D D E C O N S U L T O R Í A 9 . 4Un árbol gratis“sé que debe abordar un avión, pero déjeme tratar de expli-carle otra vez, señor”, suplica Glen Curtis, gerente de marketingde Premium Airlines. Curtis ha estado tratando, sin éxito, de ex-plicar la nueva política de la aerolínea para acumular millas yobtener premios (como promociones a primera clase y vuelosgratis) para los miembros del club “Volando por premios” dePremium Airlines.Glen hace otro intento por echar a volar la política, y dice:“Mire, señor, el viajero (ése es usted, el Sr. Icarus) recibirá las mi-llas que haya volado. Si la distancia recorrida de un tramo fue me-nor a 500 millas, el viajero recibirá 500 millas de crédito. Si el viajese hizo en sábado, la distancia recorrida se multiplicará por dos. Siel viaje se hizo en martes, el factor de multiplicación es de 1.5. Si éstees el noveno tramo recorrido durante el mes calendario, las millasse duplican sin importar cuál sea el día, y si es el 17° tramo reco-rrido, se triplican las millas. Si el viajero reservó el vuelo a travésde Web o mediante un servicio de viajes como Orbiz o Travelocity,se agregan 100 millas”.“Espero que ahora le quede más claro, Sr. Icarus. Disfrute suvuelo y gracias por volar en Premium”.El Sr. Icarus, cuyo deseo de abordar el avión de Premium es-tuvo a punto de desaparecer durante la extensa explicación de Glen,se pierde en el mar de personas que caminan por las filas de seguri-dad, sin emitir siquiera un sonido en respuesta.Desarrolle un árbol de decisión para la nueva política de Pre-mium Airlines sobre la forma de acumular millas, de manera que lapolítica sea más clara, más fácil de comprender en forma visual y,por ende, más fácil de explicar.Completar la venta después de verificar la firma.ChequeTarjeta de créditoChequeMenos de $50 $50Tarjeta de créditoCompletar la venta. No se requiere firma.Llamar al supervisor para la aprobación.Comunicarse vía electrónica con el banco parala autorización de la tarjeta de crédito.2576431FIGURA 9.14Cómo dibujar un árbol de decisiónpara mostrar las acciones deaprobación de compras que no sonen efectivo para una tiendadepartamental.www.xlibros.com
CAPÍTULO 9 • ESPECIFICACIONES DE LOS PROCESOS Y DECISIONES ESTRUCTURADAS 273El árbol de decisión tiene tres principales ventajas sobre una tabla de decisión. En primer lugar saca prove-cho de la estructura secuencial de sus ramas, por lo que se puede observar de inmediato el orden de verificaciónde las condiciones y ejecución de las acciones. En segundo lugar, podemos encontrar condiciones y acciones delos árboles de decisión en algunas ramas pero no en otras, lo cual contrasta con las tablas de decisión, donde to-das forman parte de la misma tabla. Esas condiciones y acciones que son críticas se conectan de manera directacon otras condiciones y acciones, mientras que las condiciones que no importan están ausentes. En otras pala-bras, el árbol no tiene que ser simétrico. En tercer lugar, en comparación con las tablas de decisión, otras perso-nas en la organización pueden comprender con más facilidad los árboles de decisión. En consecuencia, son másapropiados como herramienta de comunicación.CÓMO ELEGIR UNA TÉCNICA DE ANÁLISIS DE DECISIONES ESTRUCTURADASYa examinamos las tres técnicas de análisis de decisiones estructuradas: español estructurado, tablas de decisióny árboles de decisión. Aunque no es necesario utilizarlas en forma exclusiva, es costumbre elegir una técnica deanálisis para una decisión en vez de emplear las tres. Los siguientes lineamientos le proveerán una manera de elegiruna de las tres técnicas para un caso específico:1. Use español estructurado cuandoa. Haya muchas acciones repetitivas,Ob. La comunicación con los usuarios finales sea importante.2. Use tablas de decisión cuandoa. Se encuentre con combinaciones complejas de condiciones, acciones y reglas,Ob. Requiera un método que evite de manera efectiva las situaciones imposibles, redundancias ycontradicciones.3. Use los árboles de decisión cuandoa. La secuencia de condiciones y acciones sea crítica,Ob. No todas las condiciones sean relevantes para todas las acciones (que las ramificaciones sean distintas).RESUMENUna vez que el analista trabaja con los usuarios para identificarlos flujos de datos y empieza a construir un diccionario de datos,es tiempo de pasar a la especificación de procesos y el análisis dedecisiones. Los tres métodos para el análisis de decisiones y paradescribir la lógica de procesos que vimos en este capítulo sonespañol estructurado, tablas de decisión y árboles de decisión.Las especificaciones (o mini-especificaciones) de procesosse crean para los procesos primitivos en un diagrama de flujode datos, así como para algunos procesos de nivel más altoque se expanden en un diagrama hijo. Estas especificacionesexplican la lógica de toma de decisiones y las fórmulas quetransformarán los datos de entrada de un proceso en su salida.Los tres objetivos de la especificación de procesos son reducirla ambigüedad del proceso, obtener una descripción precisa delo que se logra y validar el diseño del sistema.Una manera de describir las decisiones estructuradas es me-diante el método que se conoce como español estructurado, enel cual la lógica se expresa en estructuras secuenciales, estruc-turas de decisión, estructuras de casos o iteraciones. El españolestructurado utiliza palabras clave aceptadas tales como SI (IF),ENTONCES (THEN), SINO (ELSE), HACER (DO), HACERMIENTRAS (DO WHILE) y HACER HASTA (DO UNTIL)para describir la lógica utilizada; además hace uso de la sangría paraindicar la estructura jerárquica del proceso de decisión.Las tablas de decisión son otra forma de examinar, describiry documentar las decisiones. Se utilizan cuatro cuadrantes (que seven en sentido de las manecillas del reloj, a partir de la esquinasuperior izquierda) para: 1) describir las condiciones, 2) identificarlas posibles alternativas de decisión (como Y o N), 3) indicar quéacciones se deben realizar y 4) describir las acciones. Las tablasde decisión son ventajosas ya que las reglas para desarrollar latabla en sí, además de las reglas para eliminar redundancia, con-tradicciones y situaciones imposibles, son simples y manejables.Al usar tablas de decisión se fomenta la integridad y precisión enel análisis de las decisiones estructuradas.El tercer método para el análisis de decisiones es el árbolde decisión, que consiste en nodos (un cuadrado para las accio-nes y un círculo para las condiciones) y ramificaciones. Los ár-boles de decisión son apropiados cuando las acciones se debenllevar a cabo en cierta secuencia. No hay ningún requerimientode que el árbol sea simétrico, por lo que sólo las condiciones yacciones que sean críticas para las decisiones en cuestión sonlas que se encuentran en una rama específica.Cada uno de los métodos de análisis de decisiones tienesus propias ventajas y se debe utilizar de manera acorde. El es-pañol estructurado es muy útil cuando se repiten muchas accio-nes y cuando es importante comunicarse con otros. Las tablasde decisión proveen un análisis completo de las situacionescomplejas, al tiempo que limitan la necesidad de cambio quese atribuye a las situaciones imposibles, redundancias o contra-dicciones. Los árboles de decisión son importantes cuando esimprescindible la secuencia apropiada de las condiciones y ac-ciones, y cuando cada una de las condiciones no son relevantespara cada una de las acciones.www.xlibros.com
274 PARTE III • EL PROCESO DE ANÁLISISE X P E R I E N C I A D E H Y P E R C A S E ® 9“Es realmente grandioso que hayas podido pasar todo estetiempo con nosotros: es un hecho que toda ayuda nos es de granutilidad. Y sin duda, después de haber conversado con Snowden ylos demás, usted debe tener claro que todos creemos que los consul-tores desempeñan un papel importante para ayudar a las empresasa cambiar. Bueno, al menos la mayoría de nosotros lo creemos”.“Algunas veces la estructura es buena para una persona. O in-cluso para una empresa. Como sabe, Snowden se interesa en cual-quier tipo de estructura. Ésa es la razón por la que algunas personasde Capacitación lo vuelven loco algunas veces. Son buenos al es-tructurar cosas para sus clientes, pero cuando se trata de organizarsu propio trabajo, es otro cuento. Pero bueno, avíseme si hay algoque pueda hacer por usted”.Pregunta de HYPERCASE1. Suponga que va a crear las especificaciones para un sistemade rastreo de proyectos automatizado para los empleados deCapacitación. Una de las funciones del sistema será permitirque los miembros actualicen o agreguen nombres,direcciones y números de teléfono/fax de los nuevos clientes.Use el español estructurado para escribir un procedimientoen el que se lleve a cabo el proceso de introducir el nombrede un nuevo cliente, su dirección y número telefónico/de fax.[Sugerencia: El procedimiento debe pedir el nombre deun cliente, verificar si el nombre ya existe en un archivode clientes y permitir que el usuario valide y actualice ladirección y número de teléfono/fax actual del cliente (si esnecesario), o agregar la dirección y el número de teléfono/faxde un nuevo cliente al archivo de clientes].PALABRAS CLAVE Y FRASESacciónalternativa de condiciónárbol de decisióncondicióndecisión estructuradaespañol estructuradoespecificaciones de procesosmini-especificacionesregla de accióntabla de decisiónPREGUNTAS DE REPASO1. Elabore una lista de tres razones para producir las especificaciones de los procesos.2. Defina lo que significa una decisión estructurada.3. ¿Cuáles son los cuatro elementos que debe conocer el analista de sistemas para diseñar los sistemas teniendo en cuentalas decisiones estructuradas?4. ¿Cuáles son los dos bloques de construcción del español estructurado?5. Mencione cinco convenciones a seguir cuando se utiliza español estructurado.6. ¿Cuál es la ventaja de usar español estructurado para comunicarse con las personas en la organización?7. ¿Cuál cuadrante de la tabla de decisión se utiliza para las condiciones? ¿Cuál se usa para las alternativas de condiciones?8. ¿Cuál es el primer paso a seguir en el desarrollo de una tabla de decisión?9. Mencione los cuatro problemas principales que pueden ocurrir al desarrollar tablas de decisión.10. ¿Cuál es una de las principales ventajas de las tablas de decisión si se les compara con otros métodos de análisis dedecisiones?11. ¿Cuáles son los principales usos de los árboles de decisión en el análisis de sistemas?12. Mencione los cuatro pasos principales para construir árboles de decisión.13. ¿Cuáles son las tres ventajas que tienen los árboles de decisión sobre las tablas de decisión?14. ¿Cuáles son las dos situaciones en las que debemos usar español estructurado?15. ¿Cuáles son las dos situaciones en las que funcionan mejor las tablas de decisión?16. ¿Cuáles son las dos situaciones en las que es preferible usar árboles de decisión?PROBLEMAS1. Clyde Clerk está revisando las políticas de reembolso de gastos de su empresa con el nuevo vendedor, Trav Farr.“Nuestras políticas de reembolso dependen de la situación. Verás, primero determinamos si es un viaje local. Si es así,sólo pagamos la distancia recorrida a 18.5 centavos por milla. Si el viaje fue de un día, pagamos la distancia recorrida ywww.xlibros.com
CAPÍTULO 9 • ESPECIFICACIONES DE LOS PROCESOS Y DECISIONES ESTRUCTURADAS 275después revisamos las horas de salida y retorno. Para que puedas obtener un reembolso para el desayuno, debes salir alas 7:00 AM, almorzar antes de las 11:00 A.M. y comer antes de las 5:00 P.M. Para recibir el reembolso para eldesayuno, debes regresar después de las 10:00 A.M., almorzar después de las 2:00 P.M. y comer antes de las 7:00 P.M.En un viaje que dure más de un día, otorgamos viáticos para hotel, taxi y tarifas de avión, así como las comidas. Seaplican los mismos horarios para los gastos de comida”. Escriba en español estructurado la narrativa de Clyde sobre laspolíticas de reembolso.2. Dibuje un árbol de decisión que describa la política de reembolso del problema 1.3. Dibuje una tabla de decisión que describa la política de reembolso del problema 1.4. Una empresa de provisiones para computadoras conocida como True Disk acaba de establecer cuentas parainnumerables negocios en Dosville. True Disk envía las facturas cada mes y ofrece descuentos si los pagos se realizandentro de un plazo de 10 días. La política de descuento es la siguiente: si el monto del pedido de provisiones decomputadoras es mayor de $1,000, restar un 4 por ciento al pedido; si el monto está entre $500 y $1,000, restar un 2 porciento de descuento; si el monto es menor de $500, no aplicar ningún descuento. Todos los pedidos realizados a travésdel sitio Web reciben de manera automática un descuento adicional del 5 por ciento. Cualquier pedido especial (mueblespara computadoras, por ejemplo) está exento de los descuentos.Desarrolle una tabla de decisiones para las decisiones sobre los descuentos de True Disk, en donde las alternativasde las condiciones se limiten a Y y N.5. Desarrolle una tabla de decisión con entradas extendidas para la política de descuentos de la empresa True Disk delproblema 4.6. Desarrolle un árbol de decisión para la póliza de descuentos de la empresa True Disk del problema 4.7. Escriba español estructurado para resolver la situación de la empresa True Disk del problema 4.8. Premium Airlines ofreció recientemente llegar a un acuerdo sobre una demanda colectiva que se originó debido a unsupuesto acuerdo de precios de los boletos. El acuerdo propuesto se establece de la siguiente manera:Al inicio, Premium Airlines pondrá a disposición del acuerdo colectivo un fondo principal de $25 millones en cupones.Si el número de demandas válidas interpuestas es de 1.25 millones o menos, el valor de cada demanda será el resultadoque se obtiene al dividir $25 millones entre el número total de demandas válidas que se hayan interpuesto. Por ejemplo,si hay 500,000 demandas válidas, cada persona que haya interpuesto una demanda válida recibirá un cupón con un valorde $50.La denominación de cada cupón que se distribuya será en dólares sin centavos, y no deberá exceder a $50. Porende, si hay menos de 500,000 demandas válidas, el valor de cada demanda se dividirá entre dos o más cupones. Porejemplo, si hay 250,000 demandas válidas, cada persona que haya interpuesto una demanda válida recibirá dos cupones,cada uno de los cuales tendrá un valor nominal de $50, para un valor total de cupones de $100.Si el número de demandas válidas interpuestas está entre 1.25 millones y 1.5 millones, Premium Airlines harádisponible un fondo complementario de cupones, con un valor potencial de $5 millones. El fondo complementarioestará disponible según sea necesario para proveer un cupón de $20 por cada demanda válida.Si hay más de 1.5 millones de demandas válidas, el monto total del fondo principal y el fondo complementario, queen conjunto equivalen a $30 millones, se dividirá en forma equitativa para producir un cupón para cada demanda válida.El valor de cada uno de esos cupones será de $30 millones divididos entre el número total de demandas válidas.Dibuje un árbol de decisión para el acuerdo de Premium Airlines.9. Escriba español estructurado para el acuerdo de Premium Airlines del problema 8.10. “Bueno, es algo difícil de describir”, dice Sharon, consejera del centro de nutrición Less Is More. “En realidad nunca hetenido que decirle a nadie sobre la forma en que cobramos a los clientes, pero voy a intentarlo”.“Cuando los clientes entran a Less Is More, verificamos si ya habían usado nuestros servicios antes. Por desgraciapara ellos, creo, tenemos muchos clientes repetidos que siguen rebotando. Los clientes repetidos obtienen una tarifareducida (perdón por el juego de palabras) de $100 por la primera visita, si regresan dentro de un periodo menor a 1 añode haber finalizado su programa”.“Todos los de nuevo ingreso pagan una cuota inicial de $200 para una evaluación física. El cliente puede traer uncupón en ese momento y nosotros deducimos $50 de la cuota de inscripción. La mitad de nuestros clientes utilizannuestros cupones y se enteran sobre nosotros gracias a éstos. Pero nuestros clientes repetidos sólo obtienen el descuentode $100; ¡No pueden usar un cupón también! Los clientes que se transfieren de uno de nuestros centros en otra ciudadreciben $75 de descuento de su primer pago, pero el cupón no es válido. Los clientes que pagan en efectivo reciben un10 por ciento de descuento de los $200, pero no pueden usar un cupón aparte de eso”.Cree una tabla de decisión con condiciones Y o N para el sistema de cobro para los clientes del centro de nutriciónLess Is More.11. Reduzca la tabla de decisión de la figura 9.EJ1 al número mínimo de reglas.12. Azure Isle Resort tiene una estructura de precios para vacacionistas en una de sus tres categorías de habitaciones: elhotel, las villas y los chalets de playa. El precio base es por quedarse en el hotel. Los chalets de playa tienen un recargodel 10 por ciento y la renta de una villa tiene un recargo del 15 por ciento. El precio final incluye un descuento del 4 porciento para los clientes frecuentes. Las demás condiciones se aplican a qué tan cerca está el centro vacacional de llenarsea toda su capacidad y si la fecha solicitada está dentro del periodo de un mes a partir de la fecha actual. Si el centrovacacional está lleno al 50 por ciento y la fecha está dentro del periodo de un mes, hay un 12 por ciento de descuento. Siwww.xlibros.com
276 PARTE III • EL PROCESO DE ANÁLISISReglasCantidad suficiente disponibleCantidad lo bastante grandecomo para el descuentoCliente de mayoreoSe presentó exención deimpuestos sobre ventaEnviar artículos y prepararfacturaPreparar pedido de artículospendientesDeducir descuentoAgregar impuestos sobre venta1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16XY Y Y Y Y Y Y Y N N N N N N N NY Y Y Y N N N N Y Y Y Y NN N NY Y N N Y Y N N Y Y N N Y Y N NY N Y N Y N Y N Y N Y N Y N Y NXX XX X X X X XX X X X X XX X X X X X X XCondiciones y accionesFIGURA 9.EJ1Una tabla de decisión para unalmacén.el centro vacacional está lleno al 70 por ciento y la fecha está dentro del periodo de un mes, hay un 6 por ciento dedescuento. Si el centro vacacional está lleno al 85 por ciento y la fecha está dentro del periodo de un mes, hay un 4 porciento de descuento.Desarrolle una tabla de decisión optimizada para la estructura de precios de Azure Isle Resort.13. Cree un árbol de decisión para el problema 12.14. El precio base del boleto para Cloudliner Airlines se determina en base a la distancia recorrida y el día de la semanaen que el pasajero piensa viajar. Además, la aerolínea ajusta los boletos de sus precios con base en varias categorías.Si los asientos restantes son más del 50 por ciento de la capacidad y el número de días antes del vuelo es menor a 7,el precio recibe un buen descuento con una oferta Web especial para el vuelo. Si los asientos restantes son mayores al50 por ciento y la fecha del vuelo es de 7 a 21 días en el futuro, hay un descuento medio en el precio. Si los asientosrestantes son mayores al 50 por ciento y el número de días antes de viajar es mayor de 21, sólo hay un pequeñodescuento.Si los asientos restantes representan de un 20 a un 50 por ciento de la capacidad y los días antes del vuelo sonmenores de 7, el boleto tiene un descuento medio. Si los asientos restantes representan de un 20 a un 50 por ciento de lacapacidad y la fecha del vuelo es de 7 a 21 días en el futuro, hay un descuento bajo en el precio. Si los asientos restantesrepresentan de un 20 a un 50 por ciento de la capacidad y el número de días antes de viajar es mayor de 21, hay unpequeño incremento en el precio.Desarrolle una tabla de decisión optimizada para las políticas de ajuste de precios en los boletos de CloudlinerAirlines.15. Desarrolle un árbol de decisión para la situación del problema 14.PROYECTOS EN GRUPO1. Cada miembro de grupo (o cada subgrupo) debería optar por convertirse en un “experto” y prepararse para explicarcómo y cuándo usar una de las siguientes técnicas de decisión estructuradas: español estructurado, tablas de decisión oárboles de decisión. Después cada miembro del grupo o subgrupo deberán crear un caso en relación con la utilidad de sutécnica de análisis de decisión asignada para estudiar los tipos de decisiones estructuradas tomadas por MaverickTransport en cuanto a despachar ciertos camiones hacia destinos específicos. Cada grupo debe hacer una presentación desu técnica preferida.2. Después de escuchar cada presentación, el grupo debería llegar a un consenso en cuanto a cuál técnica es la másapropiada para analizar las decisiones de Maverick Transport al despachar los camiones y por qué es mejor esa técnicaen este caso.BIBLIOGRAFÍA SELECCIONADAAnderson, D. R., D. J. Sweeny, T. A. Williams y R. K. Martin. An Introduction to Management Science, 10ª. Edición. Florence,KY: South-Western College Publishing (un sello de Cengage), 2007.Evans, J. R. Applied Production and Operations Management, 4ª. Edición. St. Paul, MN: West, 1993.www.xlibros.com
CAPÍTULO 9 • ESPECIFICACIONES DE LOS PROCESOS Y DECISIONES ESTRUCTURADAS 277E P I S O D I O 9CASO DE LA CPUALLEN SCHMIDT, JULIE E. KENDALL Y KENNETH E. KENDALLPresentar una decisiónDespués de realizar muchas entrevistas de seguimiento con Dot Matricks, Anna dice a Chip: “He determinado la lógica nece-saria para actualizar el almacén de datos PEDIDOS DE COMPUTADORAS PENDIENTES. Como se pueden pedir muchascomputadoras en la misma orden de compra, a medida que se introduce cada computadora se localiza el registro que coinciday se resta uno al número de computadoras pendientes por cada orden de compra”.Anna muestra a Chip la impresión de la pantalla del repositorio Process (Proceso). “El nombre del proceso correspon-diente, ACTUALIZAR PEDIDO DE COMPUTADORAS PENDIENTES (proceso 2.5), vincula la especificación del procesocon el diagrama de flujo de datos”, explica ella. Se listan las entradas y salidas; además deben coincidir con el flujo de datosque entra o sale del proceso. “El registro TRANSACCIÓN DE COMPUTADORA VÁLIDA es entrada y el PEDIDO PEN-DIENTE actualizado es el flujo de salida”.“Eso será útil”, dice Chip, “incluso si nos lleva tiempo desenmarañarlo todo”.Anna señala: “El área Process Description (Descripción del proceso) contiene la lógica, la cual se muestra en españolestructurado”.Una vez completa la lógica, Anna introduce unas cuantas notas más sobre la naturaleza del proceso, agrega la observaciónde que es un proceso por lotes y también agrega información de sincronización.Se puede crear una tabla de decisión para la lógica de control o de proceso. Antes de teclear la tabla de decisión, seríaconveniente crearla en papel y optimizarla. De esta forma se introducirán sólo las condiciones y acciones esenciales.“Yo también he estado ocupado”, Chip asegura a Anna. “Hablé con Cher Ware varias veces después desde que tú la entre-vistaste. Por fin capturé parte de la lógica para calcular el costo de una actualización de software”.“Cher indicó tres condiciones diferentes que afectan en el costo. La licencia del sitio provee copias ilimitadas y se utilizapara el software popular instalado en muchas computadoras. Muchos editores proveen un descuento académico y también haypor lo general un descuento por cantidad disponible”, continúa.“Primero determiné los valores para las condiciones y el número de combinaciones”, dice Chip. Él estableció las trescondiciones y sus valores de la siguiente manera:“El número total de combinaciones se obtiene al multiplicar el número de valores para cada una de las condiciones, 2  2 2  8. El siguiente paso es decidir qué condiciones deben ser primero”. Chip continúa: “Deduzco que una licencia de sitiono tendría un descuento por cantidad o un descuento académico adicional, ya que el costo de la licencia de sitio refleja de an-temano este tipo de descuento. Por lo tanto, LICENCIA DE SITIO debería ser la primera condición. Cada una de las otras doscondiciones no tendrían una ventaja específica sobre la otra, por lo que no importa su orden.“Como el número total de condiciones es de ocho y la condición LICENCIA DE SITIO tiene dos posibles valores, elfactor de repetición sería de 8/2 o 4”. Chip continúa y deja establecido que la primera fila de la tabla de decisión sería:“La siguiente condición es DESCUENTO ACADÉMICO, que también tiene dos valores. Al dividir el factor anterior decuatro entre estos dos valores obtenemos 4/2 = 2 para el siguiente factor de repetición”. Chip observa que la tabla de decisiónahora se expande en lo siguiente:Condición Valores Número de valoresLICENCIA DE SITIO Y/N 2DESCUENTO ACADÉMICO Y/N 2DESCUENTO POR CANTIDAD Y/N 2Condición 1 2 3 4 5 6 7 8LICENCIA DE SITIO Y Y Y Y N N N NCondición 1 2 3 4 5 6 7 8LICENCIA DE SITIO Y Y Y Y N N N NDESCUENTO ACADÉMICO Y Y N N Y Y N Nwww.xlibros.com
278 PARTE III • EL PROCESO DE ANÁLISISChip continúa: “La última condición, DESCUENTO POR CANTIDAD, también tiene dos valores; al dividir el factor derepetición anterior de dos entre estos dos valores obtenemos 2/2  1, que debe ser siempre el factor de repetición para la últimafila de las condiciones”. Chip deja establecido que la entrada de condiciones completa es:Chip señala que cuando se incluyen las acciones, la tabla de decisión completa es la siguiente:“Me puse a reducir algunas de las acciones redundantes, en especial las que ocurren al obtener una licencia de sitio”. Chipcontinúa: “Como las acciones son las mismas para los valores de Licencia de sitio de Y, los descuentos académicos y por can-tidad no significan nada para la condición y no tienen que considerarse. Las reglas 1 a 4 se pueden reducir en una regla”. Chipconcluye con la observación de que la tabla de decisión optimizada es la siguiente:La tabla de decisión final, que se muestra en la figura 9.1, contiene la tabla de decisión optimizada. Hay tres condiciones:que haya una licencia de sitio, un descuento académico o un descuento por cantidad. El cuadrante superior izquierdo contienelas condiciones. Directamente debajo de ellas están las acciones. Las alternativas de condición están en el cuadrante superiorCondiciones y acciones 1 2 3 4 5Licencia de sitioDescuento académicoDescuento por cantidadY N N N NY Y N NY N Y NCosto de actualización = Costo de licencia de sitioCosto de actualización = Costo académico * Número de copiasCosto de actualización = Costo de descuento * Número de copiasCosto de actualización = Costo por copia * Número de copiasCosto de actualización = (Costo académico – Descuento)* Número de copiasXXXXXFIGURA E9.1Tabla de decisión, COSTO DEACTUALIZACIÓN.Condición 1 2 3 4 5 6 7 8LICENCIA DE SITIO Y Y Y Y N N N NDESCUENTO ACADÉMICO Y Y N N Y Y N NDESCUENTO POR CANTIDAD Y N Y N Y N Y NCondición 1 2 3 4 5 6 7 8LICENCIA DE SITIO Y Y Y Y N N N NDESCUENTO ACADÉMICO Y Y N N Y Y N NDESCUENTO POR CANTIDAD Y N Y N Y N Y NAccionesCOSTO  COSTO DE LICENCIA DE SITIOCOSTO  COSTO ACADÉMICO X COPIASCOSTO  COSTO DESCUENTO X COPIASCOSTO  COSTO ACTUALIZACIÓN X COPIASCOSTO  (COSTO EDUC – DESC) X COPIASX X X XXXXXCondición 1 2 3 4 5LICENCIA DE SITIO Y N N N NDESCUENTO ACADÉMICO Y Y N NDESCUENTO POR CANTIDAD Y N Y NAccionesCOSTO  COSTO DE LICENCIA DE SITIOCOSTO  COSTO ACADÉMICO X COPIASCOSTO  COSTO DESCUENTO X COPIASCOSTO  COSTO ACTUALIZACIÓN X COPIASCOSTO  (COSTO EDUC – DESC) X COPIASXXXXXwww.xlibros.com
CAPÍTULO 9 • ESPECIFICACIONES DE LOS PROCESOS Y DECISIONES ESTRUCTURADAS 279derecho y las entradas de acción están en el cuadrante inferior derecho. Las acciones muestran cómo se determina el costo deactualización para cada condición, lo cual se indica mediante una X en las columnas de las reglas.EJERCICIOSNota: si no utiliza Visible Analyst, puede realizar algunos de los siguientes ejercicios mediante una plantilla de Microsoft Word o MicrosoftExcel para tablas de decisión. El repositorio también está disponible como página Web.E-1. Use Visible Analyst para ver la entrada en el repositorio del Proceso (Process) para ACTUALIZAR PEDIDO DE COMPU-TADORAS PENDIENTES (UPDATE PENDING COMPUTER ORDER).E-2. Use Visible Analyst para modificar e imprimir la entrada del Proceso (Process) SUBTOTALES DE HARDWARE ACUMU-LATIVOS (ACCUMULATIVE HARDWARE SUBTOTALS). Agregue la Descripción del proceso (Process Descrip-tion): “Acumular los subtotales de hardware. Estos incluyen el número de máquinas para cada marca de hardware”.E-3. Use Visible Analyst para modificar e imprimir la entrada del Proceso (Process) CONFIRMAR ELIMINACIÓN DECOMPUTADORA (CONFIRM COMPUTER DELETION). Agregue la siguiente Descripción del proceso (Processdescription):Usa el REGISTRO DE COMPUTADORA (COMPUTER RECORD) para aplicar formato a la pantalla Confirmaciónde eliminación (Deletion Confirmation) (consultar la pantalla Eliminar prototipo de computadora [DeleteComputer Prototype]).Pedir al usuario que haga clic en el botón OK para confirmar la eliminación; en caso contrario, hacer clic en el botónCancelar (Cancel) para cancelar la eliminación.Si el operador hace clic en OK para eliminar el registro, eliminar el registro y mostrar un mensaje “Se eliminó elregistro”; en caso contrario mostrar un mensaje “Se canceló la eliminación”.E-4. Crear especificaciones de Proceso (Process) para el proceso 6.6, VALIDAR MODIFICACIONES DE COMPUTA-DORA (VALIDATE COMPUTER CHANGES). La Descripción del proceso (Process Description) para el proceso esla siguiente:Validar las modificaciones en el ARCHIVO MAESTRO DE COMPUTADORA (COMPUTER MASTER). Incluir una notapara usar los criterios de edición establecidos para cada elemento. Proveer los siguientes criterios de edición adicionales:La UBICACIÓN DE LA SALA (ROOM UBICATION) debe ser válida para un campus específico.No debe haber un segundo disco duro sin el primero.La FECHA DEL ÚLTIMO MANTENIMIENTO PREVENTIVO (LAST PREVENTIVE MAINTENANCE DATE) nodebe ser mayor que la fecha actual.La FECHA DE COMPRA (DATE PURCHASED) no debe ser mayor que LA FECHA DEL ÚLTIMOMANTENIMIENTO PREVENTIVO (LAST PREVENTIVE MAINTENANCE DATE) ni mayor que la fecha actual.El MODELO (MODEL) se debe conformar al tipo soportado por el nombre de MARCA (BRAND).No se pueden realizar modificaciones en un registro inactivo.E-5. Cree especificaciones de proceso para el proceso 1.4, CREAR ARCHIVO DE REGISTRO DE SOFTWARE (CREATESOFTWARE LOG FILE). Use los ejemplos del diagrama de flujo de datos para determinar las entradas y salidas. Losdetalles del proceso son los siguientes:Aplicar formato a la ENTRADA EN EL REGISTRO DE SOFTWARE (SOFTWARE LOG RECORD) a partir de lasiguiente información:Los elementos NUEVO REGISTRO DE SOFTWARE (NEW SOFTWARE RECORD) confirmados.Los siguientes elementos del sistema: FECHA DEL SISTEMA (SYSTEM DATE), HORA DEL SISTEMA (SYSTEMTIME), ID DE USUARIO (USER ID).Cuando se haya aplicado formato al registro, escribir en el ARCHIVO DE REGISTRO DE SOFTWARE (SOFTWARELOG FILE).E-6. Produzca las especificaciones de proceso para el proceso 9.7.2, BUSCAR REGISTRO DE HARDWARE QUE COIN-CIDA (FIND MATCHING HARDWARE RECORD). Este proceso forma parte de un programa que produce un informeen el que se muestran todas las computadoras en las que se encuentra cada paquete de software. Use Visible Analyst oMicrosoft Visio para ver el diagrama de flujo de dato 9.7. Use español estructurado para describir la siguiente lógica:Para cada REGISTRO DE SOFTWARE (SOFTWARE RECORD), realizar una iteración mientras haya un número deinventario de hardware que coincida.Dentro del ciclo, realizar las siguientes tareas:Leer el ARCHIVO MAESTRO DE COMPUTADORAS (COMPUTER MASTER).Si se encuentra un registro, aplicar formato a la información del REGISTRO DE COMPUTADORA QUE COINCIDA(MATCHING COMPUTER RECORD).Si no se encuentra un registro, aplicar formato a una línea de error SIN COINCIDENCIAS (NO MATCHING).Además, si el REGISTRO DE COMPUTADORA (COMPUTER RECORD) que se encontró está inactivo, indicandoque se retiró del servicio, aplicar formato a una línea de error de COMPUTADORA QUE COINCIDE INACTIVA(INACTIVE MATCHING COMPUTER).www.xlibros.com
280 PARTE III • EL PROCESO DE ANÁLISISE-7. Cree la tabla de decisión BUSCAR UBICACIÓN DE SOFTWARE (FIND SOFTWARE LOCATION), la cual representala lógica para un programa de consulta que muestra todas las ubicaciones para un TÍTULO DE SOFTWARE (SOFT-WARE TITLE) y VERSIÓN (VERSION) dados. Se crearon y optimizaron las condiciones para producir cinco reglas,las cuales se ilustran en la figura E9.2. Introduzca las acciones que hay que introducir y una X en la columna relacionadacon las condiciones. Si utiliza un procesador de palabras, imprima la tabla de decisión final. Las condiciones y accionesse representan mediante la siguiente lógica:Se localiza el archivo MAESTRO DE SOFTWARE (SOFTWARE MASTER) para el TÍTULO (TITLE) especifi-cado. Si no se encuentra un registro que coincida, se muestra un mensaje de error. Como puede haber varias versiones,se revisa el NÚMERO DE VERSIÓN (VERSION NUMBER) en el registro para ver si coincide con la versión introdu-cida. Si no se encuentra la versión solicitada, se leen más registros mediante el uso del índice alterno. SI se leen todos losregistros y no se encuentra el número de versión, se muestra el mensaje de error VERSIÓN NO DISPONIBLE (VER-SION NOT AVAILABLE).Una vez que se localiza el software correcto, se obtiene un registro ARCHIVO MAESTRO DE COMPUTADORAS(COMPUTER MASTER) coincidente. Si no se encuentra el ARCHIVO MAESTRO DE COMPUTADORAS, se mues-tra el mensaje de error NO SE ENCONTRÓ LA MÁQUINA (MACHINE NOT FOUND). Para cada máquina que coin-cida, se busca en la TABLA DE CAMPUS (CAMPUS TABLE) el código de la UBICACIÓN DEL CAMPUS (CAMPUSLOCATION). Si no se encuentra el código, se muestra el mensaje CAMPUS CODE NOT FOUND (NO SE ENCONTRÓEL CÓDIGO DE CAMPUS).Si no hay errores, se muestra la información solicitada.E-8. Cree una tabla de decisiones para una actualización por lotes de la tabla de base de datos ARCHIVO MAESTRO DECOMPUTADORAS (COMPUTER MASTER). La información se envía de un campus regional en formato de XML quecontiene tres tipos de actualizaciones: Agregar (Add), Eliminar (Delete) y Modificar (Change).Hay que leer el registro del ARCHIVO MAESTRO DE COMPUTADORAS. Si la transacción es Agregar y no seencuentra el archivo maestro, aplicar formato y escribir el nuevo registro del ARCHIVO MAESTRO DE COMPUTADO-RAS. Imprimir una línea de transacción válida en un INFORME DE ACTUALIZACIÓN (UPDATE REPORT). Para unatransacción Modificar o Eliminar, imprimir una LÍNEA DE ERROR DE MODIFICACIÓN (CHANGE ERROR LINE)o una LÍNEA DE ERROR DE ELIMINACIÓN (DELETE ERROR LINE) si no se encuentra el registro en el ARCHIVOMAESTRO DE COMPUTADORAS.Si se encuentra el registro, revisar el código activo. Si el registro está inactivo y la transacción es Agregar, aplicarformato y volver a escribir el nuevo registro del ARCHIVO MAESTRO DE COMPUTADORA. Imprimir una línea detransacción válida en un INFORME DE ACTUALIZACIÓN. Para una transacción Modificar o Eliminar, imprimir unaLÍNEA DE ERROR DE MODIFICACIÓN o una LÍNEA DE ERROR DE ELIMINACIÓN.Si el registro del ARCHIVO MAESTRO DE COMPUTADORA está activo y la transacción es Agregar, imprimiruna LÍNEA DE ERROR DE AGREGAR. Para una transacción Modificar, aplicar formato a los cambios y volver a es-cribir el registro del ARCHIVO MAESTRO DE COMPUTADORA. Imprimir la LÍNEA DE TRANSACCIÓN VÁLIDA(VALID TRANSACTION LINE). Para una transacción Eliminar, cambiar el CÓDIGO ACTIVO (ACTIVE CODE) ainactivo y volver a escribir el registro del ARCHIVO MAESTRO DE COMPUTADORAS. Imprimir la LÍNEA DETRANSACCIÓN VÁLIDA (VALID TRANSACTION LINE).Los ejercicios en los que se antepone un icono www indican material de valor agregado disponible en el sitio Web www.pearsonhighered.com/kendall. Los estudiantes pueden descargar un archivo de muestra de Microsoft Visio, Visible Analyst, Microsoft Project o Microsoft Access quepueden usar para completar los ejercicios.Condiciones y acciones 1 2 3 4 5Se encontró un registro de software que coincideSe encontró la versión de softwareSe encontró un registro de computadora que coincideSe encontró código de campus en la tablaY Y Y Y NY Y Y NY Y NY NMostrar el mensaje de error ‘No hay registro de software quecoincida’Mostrar el mensaje de error ‘Versión no disponible’Mostrar el mensaje de error ‘No se encontró el código de campus’Mostrar información sobre la ubicaciónXXXXFIGURA E9.2Tabla de decisión BUSCARUBICACIÓN DE SOFTWARE.www.xlibros.com
281C A P Í T U L O 1 0Análisis y diseño de sistemasorientados a objetosmediante el uso de UML1OBJETIVOS DE APRENDIZAJEAl completar este capítulo usted podrá:1. Comprender qué es el análisis y diseño de sistemas orientados a objetos, y apreciar su utilidad.2. Comprender los conceptos del lenguaje unificado de modelado (UML), la metodologíaestándar para modelar un sistema en el mundo orientado a objetos.3. Aplicar los pasos utilizados en el UML para descomponer el sistema en un modelo decasos de uso y después en un modelo de clases.4. Hacer diagramas de los sistemas con el conjunto de herramientas de UML, para poderdescribirlos y diseñarlos en forma apropiada.5. Documentar y comunicar el sistema orientado a objetos recién modelado para losusuarios y demás analistas.El análisis y diseño orientados a objetos pueden ofrecer una metodologíaque facilita los métodos lógicos, rápidos y detallados para crear sistemas querespondan a un panorama de negocios en evolución. Las técnicas orientadasa objetos funcionan bien en situaciones en las que los sistemas de informa-ción complicados pasan a través de un proceso continuo de mantenimiento,adaptación y rediseño.En este capítulo presentaremos el lenguaje unificado de modelado (UML), el estándar en la in-dustria para modelar sistemas orientados a objetos. El conjunto de herramientas de UML incluyediagramas que permiten visualizar la construcción de un sistema orientado a objetos. Cada iteraciónaborda de manera cada vez más detallada el diseño del sistema, hasta que las cosas y las relacionesen el sistema estén definidas con claridad y precisión en documentos de UML. El UML es una potenteherramienta que puede mejorar en forma considerable la calidad de nuestro análisis y diseño desistemas, y en consecuencia puede ayudarnos a crear sistemas de información de mayor calidad.Cuando se introdujo la metodología orientada a objetos, sus defensores citaban la reutiliza-ción de los objetos como su principal beneficio. Es lógico pensar que el reciclaje de las partes delprograma reduce los costos del desarrollo en los sistemas basados en computadoras, y esto haresultado un procedimiento muy efectivo en el desarrollo de GUI y bases de datos. Aunque lareutilización es el principal objetivo, también es muy importante el mantenimiento de los sistemasy, como la metodología orientada a objetos crea objetos que contienen tanto datos como códigode programa, si se modifica un objeto habrá un mínimo impacto en los demás objetos.1 Por Julie E. Kendall, Kenneth E. Kendall y Allen Schmidt.www.xlibros.com
282 PARTE III • EL PROCESO DE ANÁLISISCONCEPTOS ORIENTADOS A OBJETOSLa programación orientada a objetos difiere de la programación tradicional por procedimientos en cuanto a queexamina los objetos que forman parte de un sistema. Cada objeto es una representación de alguna cosa o eventoreal. En esta sección presentaremos las descripciones generales de los conceptos orientados a objetos clave: obje-tos, clases y herencia. Más adelante en el capítulo presentaremos más detalles sobre otros conceptos de UML.ObjetosLos objetos son personas, lugares o cosas relevantes para el sistema a analizar. Los sistemas orientados a objetosdescriben las entidades como objetos. Algunos objetos comunes son clientes, artículos, pedidos, etcétera. Losobjetos también pueden ser pantallas de GUI o áreas de texto en la pantalla.ClasesPor lo general, los objetos forman parte de un grupo de elementos similares, conocidos como clases. La intenciónde colocar elementos en clases no es nuevo. Describir el mundo como algo compuesto de animales, vegetales yminerales es un ejemplo de clasificación. La metodología científica incluye clases de animales (como mamífe-ros) y después divide esas clases en subclases (como animales que ponen huevos, y mamíferos marsupiales).La idea subyacente es tener un punto de referencia y describir un objeto específico en términos de sus simi-litudes o diferencias en relación con los miembros de su propia clase. Al hacer esto es más eficiente para alguiendecir: “El oso koala es un marsupial (o animal con bolsa) con una cabeza grande y redonda, y con oídos pelu-dos” que tratar de describir un oso koala a través de todas sus características como mamífero. Es más eficientedescribir las características, apariencia e incluso el comportamiento de esta manera. La palabra reutilizable, en elmundo orientado a objetos, significa que se puede ser más eficiente gracias a que no hay necesidad de comenzardesde el principio para describir cada objeto cada vez que se requiera en el desarrollo de software.Los objetos se representan y agrupan mediante clases, las cuales son óptimas para la reutilización y la facili-dad de mantenimiento. Una clase define el conjunto de atributos compartidos y comportamientos que se encuen-tran en cada objeto de la clase. Por ejemplo, los registros para los estudiantes en la sección de un curso tieneninformación similar almacenada para cada estudiante. Se dice que los estudiantes conforman una clase. Los valo-res pueden ser distintos para cada estudiante, pero el tipo de información es el mismo. Los programadores debendefinir las diversas clases en el programa que escriben. Al ejecutarse el programa se pueden crear objetos a partir dela clase establecida. El término instanciar se utiliza cuando se crea un objeto a partir de una clase. Por ejemplo,un programa podría instanciar un estudiante llamado Peter Wellington como un objeto de la clase etiquetadacomo estudiante.Lo que distingue a la programación orientada a objetos (y por ende al análisis y diseño orientado a ob-jetos) de la programación clásica es la técnica de colocar todos los atributos y métodos de un objeto dentrode una estructura autocontenida, la clase en sí. Éste es un acontecimiento familiar en el mundo físico. Porejemplo, la mezcla de un pastel en caja es análoga a una clase, ya que tiene los ingredientes así como lasinstrucciones sobre cómo mezclar y hornear el pastel. Un suéter de lana es similar a una clase, ya que tieneuna etiqueta cosida con instrucciones sobre su cuidado, que le advierten lavarlo a mano y dejarlo secar ex-tendido.Cada clase debe tener un nombre que la distinga de las demás. Por lo general, los nombres de las clases sonsustantivos o frases cortas y empiezan con mayúscula. En la figura 10.1 la clase se llama AutoRenta. En UML,una clase se dibuja como un rectángulo. Este rectángulo contiene otras dos características importantes: una listade atributos y una serie de métodos. Estos elementos describen una clase, la unidad de análisis que forma unagran parte de lo que llamamos análisis y diseño orientado a objetos.Un atributo describe cierta propiedad que poseen todos los objetos de la clase. Cabe mencionar que la claseAutoRenta posee los atributos de tamanio, color, marca y modelo. Todos los automóviles poseen estos atributos,AutoRentatamaniocolormarcamodelorentar()devolver()reparar()Nombre de la claseAtributosMétodos (operaciones)FIGURA 10.1Un ejemplo de una clase de UML,la cual se describe como unrectángulo que consiste en elnombre de la clase, sus atributos ymétodos.www.xlibros.com
CAPÍTULO 10 • ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 283pero cada automóvil tendrá distintos valores para sus atributos. Por ejemplo, un automóvil puede ser azul, blancoo de algún otro color. Más adelante demostraremos que puede ser más específico sobre el rango de valores paraestas propiedades. Al especificar atributos, por lo general la primera letra va en minúscula.Un método es una acción que se puede solicitar de cualquier objeto de la clase. Los métodos son los procesosque una clase sabe cómo llevar a cabo. También se les conoce como operaciones. Para la clase AutoRenta, ren-tar(), devolver() y reparar() son ejemplos de métodos. Al especificar métodos, por lo general la primera letra estáen minúscula.HerenciaOtro concepto clave de los sistemas orientados a objetos es la herencia. Las clases pueden tener hijos; es decir, sepuede crear una clase a partir de otra. En UML, la clase original (o padre) se conoce como clase base; a la clasehija se le denomina clase derivada. Podemos crear una clase derivada de tal forma que herede todos los atributosy comportamientos de la clase base. Sin embargo, una clase derivada puede tener atributos y comportamientosadicionales. Por ejemplo, podría haber una clase Vehículo para una empresa de renta de automóviles que con-tenga atributos tales como tamaño, color y marca.La herencia reduce la labor de programación al permitir que se utilicen los objetos comunes con facilidad. Elprogramador sólo necesita declarar que la clase Auto hereda de la clase Vehículo y después proporcionar todoslos detalles adicionales sobre los nuevos atributos o comportamientos que sean únicos para un automóvil.Todos los atributos y comportamientos de la clase Vehículo pasan de manera automática e implícita a formarparte de la clase Auto y no requieren de programación adicional. Esto permite al analista definir una vez perousar muchas veces; algo similar a los datos que están en la tercera forma normal, que se definen sólo una vez enuna tabla de la base de datos (como veremos en el capítulo 13).Las clases derivadas que se muestran en la figura 10.2 son Auto o Camión. Aquí se antepone un signo ne-gativo a los atributos y un signo positivo a los métodos. Más adelante en el capítulo hablaremos sobre esto conmás detalle; por ahora tenga en cuenta que los signos negativos significan que estos atributos son privados (nose comparten con otras clases) y que los signos positivos significan que estos métodos son públicos (otras clasespueden invocarlos).Vehículo–tamanio–color–marca–modelo–disponible–tarifaPorDia–tarifaPorSemana–tarifaPorMilla+rentar()+devolver()+reparar()+agregarNuevo()Autoes un es un–tamanio–color–marca–modelo–disponible–tarifaPorDia–tarifaPorSemana–tarifaPorMilla–estilo+rentar()+devolver()+reparar()+agregarNuevo()Camion–tamanio–color–marca–modelo–disponible–tarifaPorDia–tarifaPorSemana–tarifaPorMilla–longitud–traccion4Ruedas–cambioManual+rentar()+devolver()+reparar()+agregarNuevo()FIGURA 10.2Un diagrama de clases quemuestra la herencia. Auto yCamion son ejemplos específicosde vehículos y heredan lascaracterísticas de la clase másgeneral, Vehículo.www.xlibros.com
284 PARTE III • EL PROCESO DE ANÁLISISLa reutilización de código de programa ha formado parte del desarrollo de sistemas estructurados y los len-guajes de programación (como COBOL) durante muchos años; además han existido subprogramas que encapsu-lan datos. Sin embargo, la herencia es una herramienta que se encuentra sólo en los sistemas orientados a objetos.TARJETAS CRC Y PENSAMIENTO EN OBJETOSAhora que hemos presentado los conceptos fundamentales del análisis y diseño orientados a objetos, necesitamosexaminar formas de crear clases y objetos a partir de los problemas de negocios y los sistemas a los que nos en-frentamos. Una forma de empezar a poner en práctica la metodología orientada a objetos es empezar a pensar yhablar de esta manera. Un método útil es desarrollar tarjetas CRC.CRC representa a las clases, responsabilidades y colaboradores. El analista puede usar estos conceptoscuando empieza a hablar sobre el sistema o a modelarlo a partir de una perspectiva orientada a objetos. Lastarjetas CRC se utilizan para representar las responsabilidades de las clases y las interacciones entre ellas. Losanalistas crean las tarjetas con base en escenarios que describen los requerimientos del sistema. Estos escenariosmodelan el comportamiento del sistema que se está estudiando. Si se van a usar en un grupo, las tarjetas CRCse pueden elaborar en forma manual en pequeñas tarjetas de cartulina por cuestión de flexibilidad, o se puedencrear mediante el uso de una computadora.Hemos agregado dos columnas a la plantilla de tarjeta CRC original: la columna Pensamiento en objetosy la columna de propiedades. Los enunciados de Pensamiento en objetos están escritos en español común; elnombre de la propiedad o atributo está escrito en su lugar apropiado. El propósito de estas columnas es aclarar elpensamiento y ayudar a pasar a la creación de diagramas de UML.Interacción durante una sesión CRCLas tarjetas CRC se pueden crear de manera interactiva con unos cuantos analistas que puedan trabajar en con-junto para identificar la clase en el dominio del problema presentado por la empresa. Una sugerencia es buscar to-dos los sustantivos y verbos en un enunciado del problema que se haya creado para capturarlo. Por lo general, lossustantivos indican las clases en el sistema; para encontrar las responsabilidades hay que identificar los verbos.Haga una sesión de lluvia de ideas con su grupo de analistas para identificar todas las clases que pueda. Sigael formato estándar para la lluvia de ideas, que consiste en no criticar la respuesta de ninguno de los participan-tes en este punto, sino solicitar todas las respuestas posibles. Una vez identificadas todas las clases, los analistaspueden empezar a compilarlas, eliminar las ilógicas y escribir cada una en su tarjeta. Asigne una clase a cadapersona en el grupo, que será su “propietaria” durante la sesión CRC.A continuación, el grupo crea escenarios que en realidad son recorridos de las funciones del sistema, paralo cual se toma la funcionalidad deseada del documento de requerimientos creado con anterioridad. Primero hayque considerar los métodos de sistemas típicos, con excepciones tales como la recuperación de errores que selleva a cabo después de haber cubierto los métodos de rutina.Mientras el grupo decide sobre la clase que será responsable de una función específica, el analista propieta-rio de la misma durante la sesión elige esa tarjeta y declara: “Necesito cumplir con mi responsabilidad”. CuandoO P O R T U N I D A D D E C O N S U L T O R Í A 1 0 . 1Alrededor del mundo en 80 objetosComo usted describió las ventajas de usar metodologías orienta-das a objetos, Jules y Vern, dos ejecutivos de nivel superior enWorld’s Trend desean que analice su empresa mediante el uso deesta metodología. En la figura 7.15 encontrará un resumen de lasactividades de negocios de World’s Trend. Observe también la seriede diagramas de flujo de datos en ese capítulo para que pueda con-ceptualizar el problema y empiece a realizar la transición al Pensa-miento en objetos.Como usted es buen amigo de Jules y Vern, y no tiene incon-veniente en obtener un poco de experiencia práctica en cuanto aluso del pensamiento orientado a objetos, accede a aplicar lo quesabe para después enviarles un informe.Una vez que haya vuelto a leer las actividades de negocios paraWorld’s Trend, provea una revisión oportuna completando las si-guientes tareas:Use la técnica de tarjetas CRC para listar las clases, responsa-bilidades y colaboradores.Use la técnica de Pensamiento en objetos para listar lo que seconoce y los atributos correspondientes para los objetos en las cla-ses identificadas en la etapa anterior.Haga un informe usando ambos pasos y vaya a las oficinasgenerales de World’s Trend con su informe en la mano. Sin dudaJules y Vern esperan un viaje fantástico en el nuevo mundo de losmétodos orientados a objetos.www.xlibros.com
CAPÍTULO 10 • ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 285Nombre de la clase:Superclases:Subclases:Responsabilidades Colaboradores Pensamiento en objetos PropiedadDepartamentoAgregar un nuevo departamento Curso Conozco mi nombreConozco mi silla del departamentoProveer información del departamentoNombre del departamentoNombre de la sillaNombre de la clase:Superclases:Subclases:Responsabilidades Colaboradores Pensamiento en objetos PropiedadCursoAgregar un nuevo curso Departamento Conozco el número de mi cursoConozco mi descripciónConozco mi número de créditosAsignaciónExamenLibro de textoModificar información del cursoMostrar información del cursoNúmero de cursoDescripción del cursoCréditosNombre de la clase:Superclases:Subclases:Responsabilidades Colaboradores Pensamiento en objetos PropiedadLibro de textoAgregar un nuevo libro de texto Curso Conozco mi ISBNConozco mi autorConozco mi títuloConozco mi ediciónConozco mi editorialSé si soy obligatorioEdiciónEditorialObligatorioCambiar la información del libro de textoBuscar información del libro de textoEliminar libros de texto obsoletosISBNAutorTítuloNombre de la clase:Superclases:Subclases:Responsabilidades Colaboradores Pensamiento en objetos PropiedadAsignaciónAgregar una nueva asignación Conozco mi número de asignaciónConozco mi descripciónSé cuántos puntos valgoCambiar una asignaciónVer una asignaciónSé cuando me deben entregarNúmero de tareaDescripción de tareaPuntosFecha de entregaCursoFIGURA 10.3Cuatro tarjetas CRCpara losofrecimientos decursos, las cualesmuestran cómo losanalistas llenanlos detalles para lasclases,responsabilidades ycolaboradores, asícomo para losenunciados depensamiento enobjetos y losnombres de laspropiedades.alguien sostiene una tarjeta en el aire, se considera un objeto y puede hacer cosas. Después el grupo procede a re-finar la responsabilidad en tareas cada vez más pequeñas, de ser posible. Si es apropiado, el objeto pude cumplircon estas tareas o el grupo puede decidir que se cumplan mediante la interacción con otras cosas. Si no existenotras clases apropiadas, tal vez el grupo tenga que crear una.Las cuatro tarjetas CRC descritas en la figura 10.3 muestran cuatro clases de ofrecimientos de cursos. Ob-serve que en una clase llamada Curso, el analista de sistemas es referido a cuatro colaboradores: el departa-www.xlibros.com
286 PARTE III • EL PROCESO DE ANÁLISISmento, el libro de texto, la asignación del curso y el examen del curso. Después, estos colaboradores se describencomo clases por sí solas en las otras tarjetas CRC.Las responsabilidades que se enlistan evolucionarán en un momento dado en lo que se conoce como méto-dos en UML. Los enunciados de Pensamiento en objetos parecen rudimentarios, pero son conversacionales, detal forma que alientan a los analistas durante una sesión CRC a describir tantos de estos enunciados como pue-dan. Como vimos en el ejemplo, todo el diálogo durante una sesión CRC se lleva a cabo en primera persona, demanera que hasta el libro de texto habla: “Conozco mi ISBN”, “Conozco mi autor”. Después, estos enunciadosse pueden utilizar para describir atributos en UML. Podemos llamar a estos atributos según los nombres de susvariables, como edicion y editorial.CONCEPTOS Y DIAGRAMAS DEL LENGUAJEUNIFICADO DE MODELADO (UML)Es muy conveniente investigar y comprender la metodología del UML debido a su amplia aceptación y uso.UML provee un conjunto estandarizado de herramientas para documentar el análisis y diseño de un sistema desoftware. El conjunto de herramientas de UML incluye diagramas que permiten a las personas visualizar la cons-trucción de un sistema orientado a objetos, algo similar a la forma en que los planos de construcción permiten alas personas visualizar la construcción de un edificio. Ya sea que usted trabaje de manera independiente o con unextenso equipo de desarrollo de sistemas, la documentación que puede crear con UML provee un medio efectivode comunicación entre el equipo de desarrollo y el equipo de negocios en un proyecto.El UML consiste en cosas, relaciones y diagramas, como se muestra en la figura 10.4. Los primeros com-ponentes (o elementos primarios) de UML se llaman cosas. Tal vez usted prefiera otra denominación, comoCategoría de UMLCosasElementos de UMLCosas estructuralesCosas decomportamientoInteraccionesMáquinas de estadoCosas de agrupamiento PaquetesCosas de anotaciones NotasClasesInterfacesColaboracionesCasos de usoClases activasComponentesNodosRelaciones Relaciones estructurales DependenciasAgregacionesAsociacionesGeneralizacionesDiagramas Diagramas estructurales Diagramas de clasesDiagramas de componentesDiagramas de despliegueRelaciones decomportamientoComunicaIncluyeExtiendeGeneralizaDiagramas decomportamientoDiagramas de casos de usoDiagramas de secuenciaDiagramas de comunicaciónDiagramas de estadosDiagramas de actividadDetalles específicos de UMLFIGURA 10.4Una vista general de UML y suscomponentes: cosas, relaciones ydiagramas.www.xlibros.com
CAPÍTULO 10 • ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 287objeto, pero en UML se les llama cosas. Las cosas estructurales son las más comunes. Las cosas estructuralesson clases, interfaces, casos de uso y muchos otros elementos que proveen la forma de crear modelos. Las cosasestructurales permiten al usuario describir las relaciones. Las cosas de comportamiento describen la forma enque funcionan las cosas. Algunos ejemplos de cosas de comportamiento son las interacciones y las máquinasde estado. Las cosas de grupo se utilizan para definir límites. El paquete es un ejemplo de cosa de grupo. Porúltimo tenemos las cosas de anotaciones, para poder agregar notas en los diagramas.Las relaciones son el pegamento que mantiene las cosas unidas entre sí. Es conveniente pensar en la relacionesde dos formas. Las relaciones estructurales se utilizan para unir las cosas en los diagramas estructurales. Las relacio-nes estructurales incluyen dependencias, agregaciones, asociaciones y generalizaciones. Por ejemplo, las relacionesestructurales muestran herencia. Las relaciones de comportamiento se utilizan en los diagramas de comportamiento.Los cuatro tipos básicos de relaciones de comportamiento son comunica, incluye, extiende y generaliza.Hay dos tipos principales de diagramas en UML: diagramas estructurales y diagramas de comportamiento.Los diagramas estructurales se utilizan, por ejemplo, para describir las relaciones entre las clases. Éstos se divi-den en diagramas de clases, diagramas de objetos, diagramas de componentes y diagramas de despliegue. Porotro lado, los diagramas de comportamiento se pueden utilizar para describir la interacción entre las personas(actores en UML) y lo que denominamos caso de uso, o la forma en que los actores utilizan el sistema. Losdiagramas de comportamiento se dividen en diagramas de casos de uso, diagramas de secuencia, diagramas decomunicación, diagramas de estados y diagramas de actividad.En el resto del capítulo nos enfocaremos primero en el modelado de casos de uso, la base de todas lastécnicas de UML. Después analizaremos la forma en que se utiliza un caso de uso para derivar las actividades,secuencias y clases: los diagramas de UML que se utilizan con más frecuencia. Como hay libros completosdedicados a la sintaxis y el uso del UML (el documento oficial de especificaciones de UML tiene más de 800páginas), proveeremos sólo un breve resumen de los aspectos más valiosos y más utilizados del UML.Los seis diagramas de UML que se utilizan con más frecuencia son:1. Un diagrama de casos de uso, que describe la forma en que se utiliza el sistema.2. Un escenario de caso de uso (aunque técnicamente no es un diagrama). Este escenario es una articulaciónverbal de excepciones para el comportamiento principal descrito por el caso de uso principal.3. Un diagrama de actividad, que ilustra el flujo de actividades en general. Cada caso de uso puede crear undiagrama de actividad.4. Los diagramas de secuencia, que muestran la secuencia de las actividades y las relaciones entre las clases.Cada caso de uso puede crear uno o más diagramas de secuencia. El diagrama de comunicación es laalternativa a un diagrama de secuencia, el cual contiene la misma información pero enfatiza la comunicaciónen vez de la sincronización.5. Los diagramas de clases, que muestran las clases y sus relaciones. Los diagramas de secuencia se utilizan(junto con las tarjetas CRC) para determinar las clases. El diagrama de generalización/especialización (gen/spec) es un derivado del diagrama de clases.6. Los diagramas de estados, que muestran las transiciones de estado. Cada clase puede crear un diagrama deestados, el cual es útil para determinar los métodos de la clase.En la figura 10.5 se ilustra la forma en que se relacionan estos diagramas entre sí. En las siguientes seccio-nes hablaremos sobre cada uno de estos diagramas.MODELADO DE CASOS DE USOUML se basa fundamentalmente en una técnica de análisis orientado a objetos conocida como modelado de ca-sos de uso, la cual se presentó en el capítulo 2. Un modelo de casos de uso muestra una vista del sistema desdela perspectiva del usuario, por lo cual describe qué hace el sistema sin describir cómo lo hace. Podemos utilizarUML para analizar el modelo de casos de uso y derivar los objetos del sistema junto con sus interacciones entresí y con los usuarios del sistema. Al utilizar técnicas de UML podemos analizar con más detalle los objetos y susinteracciones para derivar su comportamiento, atributos y relaciones.Un caso de uso provee a los desarrolladores un panorama sobre lo que desean los usuarios. Está libre de de-talles técnicos o de implementación. Podemos pensar en un caso de uso como una secuencia de transacciones enun sistema. El modelo de casos de uso se basa en las interacciones y relaciones de los casos de uso individuales.Un caso de uso siempre describe tres cosas: un actor que inicia un evento, el evento que desencadena uncaso de uso y el caso de uso que realiza las acciones desencadenadas por el evento. En un caso de uso, un actorque utiliza el sistema inicia un evento que a su vez genera una serie relacionada de interacciones en el sistema.Los casos de uso se utilizan para documentar una transacción o evento individual. Se introduce un evento en elsistema, el cual ocurre en un tiempo y lugar específicos para provocar que el sistema haga algo. Para obtener másinformación sobre los símbolos de los casos de uso y cómo dibujar diagramas de casos de uso, vea el capítulo 2.www.xlibros.com
288 PARTE III • EL PROCESO DE ANÁLISISCada caso de usopuede crear undiagrama deactividad.Cada escenario decaso de uso puedecrear un diagramade secuencia.Diagrama de clasesDiagrama de estadosDiagrama de secuenciaDiagrama de casos de usoDiagrama de comunicación1 1..11Diagrama de actividadLos diagramas desecuencia ycomunicación sonintercambiables.Cada clase puedetener un diagramade estados paraayudar a determinarlas operaciones.Los escenarios delcaso de uso sepueden generar apartir del diagramade caso de uso.Los casos de usoy los diagramas desecuencia ayudana determinarlas clases.Escenario de caso de usoIdentificadoresPasosCondicionesFIGURA 10.5Una vista general de los diagramas de UML que muestra cómo cadadiagrama conduce al desarrollo de otros diagramas de UML.La figura 10.6 es el ejemplo de un caso de uso de la inscripción de estudiantes en una universidad. Cabemencionar que se representan sólo las funciones más importantes. El caso de uso Agregar estudiante no indicacómo agregar estudiantes, el método de implementación. Los estudiantes se pueden agregar en persona, a travésde Web, mediante el uso de un teléfono de tonos o a través de una combinación de todos estos métodos. El caso deuso Agregar estudiante incluye el caso de uso Verificar identidad para verificar la identidad del estudiante. Elcaso de uso Comprar libro de texto extiende el caso de uso Inscribirse en clase y puede formar parte de unsistema para inscribir a los estudiantes en un curso en línea.Tal vez parezca que el caso de uso Cambiar información de estudiante fuera una característica menor del sis-tema y no debiera incluirse en el diagrama de casos de uso, pero como esta información cambia con frecuencia, la ad-www.xlibros.com
CAPÍTULO 10 • ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 289ministración tiene mucho interés en permitir a los estudiantes cambiar su propia información personal. El hecho de quelos administradores consideren esto importante no sólo justifica, sino también exige, que se elabore el caso de uso.No se debe permitir a los estudiantes cambiar el promedio de su calificación, las cuotas pendientes u otrainformación relacionada. Este caso de uso también incluye el caso de uso Verificar identidad, que en esta situa-ción significa que el estudiante tiene que introducir un ID de usuario y una contraseña para poder acceder al sis-tema. Ver información de estudiante permite a los estudiantes ver su información personal, así como los cursosy las calificaciones.En la figura 10.7 se muestra el ejemplo de un escenario de caso de uso. Algunas de las áreas incluidas sonopcionales ya que tal vez no todas las organizaciones las utilicen. Las tres áreas principales son:1. Un área de encabezado que contiene los identificadores e iniciadores de casos.2. Los pasos realizados.3. Un área al pie que contiene las precondiciones, suposiciones, preguntas y demás información.En la primera área el caso de uso se identifica por su nombre, Cambiar información de estudiante; el actorse identifica como Estudiante y se describen el Caso de uso y Evento desencadenador. La segunda área contieneuna serie de pasos que se realizan siempre y cuando no haya errores. Por último, en la tercera área se identificantodas las pre- y post-condiciones, además de las suposiciones. Algunas de éstas son obvias, como la pre-condi-ción de que el estudiante esté en la página Web correcta y la suposición de que el estudiante tenga un ID y con-traseña válidos. Otras no son tan obvias, como la cuestión pendiente relacionada con las veces que se permite aun estudiante iniciar sesión en el sistema.<< incluye >><< incluye >><< incluye >><< incluye >><< extiende >>RegistroEstudianteCambiarinformaciónde estudianteVerificaridentidadOficina financieraTienda de librosDepartamentoEstudianteTransferircréditosVer informaciónde estudianteComprar librode textoInscribirseen claseAgregarestudianteFIGURA 10.6Ejemplo de casos de uso sobre lainscripción de estudiantes.www.xlibros.com
290 PARTE III • EL PROCESO DE ANÁLISISLos diagramas de casos de uso proveen la base para crear otros tipos de diagramas, como los diagramas declases y los diagramas de actividad. Los escenarios de casos de uso son útiles para dibujar diagramas de secuen-cia. Tanto los diagramas de casos de uso como los escenarios de casos de uso son potentes herramientas paraayudarnos a comprender la forma en que un sistema funciona en general.DIAGRAMAS DE ACTIVIDADLos diagramas de actividad muestran la secuencia de actividades en un proceso, incluyendo las actividades se-cuenciales y paralelas, además de las decisiones que se toman. Por lo general se crea un diagrama de actividadpara un caso de uso y puede mostrar los distintos escenarios posibles.En la figura 10.8 se muestran los símbolos en los diagramas de actividad. Un rectángulo con esquinas redon-das representa una actividad, ya sea manual —como firmar un documento— o automatizada —como un métodoo programa—.Nombre del caso de uso: Cambiar información de estudiante ID única: Estudiante UC 005Área:Actor(es):Descripción:Evento desencadenador:Pre-condiciones:Post-condiciones:Suposiciones:Pasos realizados (ruta principal)Sistema de estudiantesEl estudiante se encuentra en la página Web Cambiar información de estudiante.El estudiante tiene un navegador y un ID de usuario y contraseña válidos.El estudiante cambió con éxito su información personal.Requerimientos cumplidos: Permitir que los estudiantes puedan cambiar su información personal mediante el uso de un sitio Web seguro.Cuestiones pendientes: ¿Hay que controlar el número de veces que se permite a un estudiante iniciar sesión?Prioridad: MediaRiesgo: MedioEl estudiante usa el sitio Web Cambiar información de estudiante, introduce el ID y contraseña de estudiantey hace clic en el botón Enviar.1. El estudiante inicia sesión en el servidor Web seguro.2. Se lee el registro del estudiante y se verifica la contraseña.3. La información personal actual del estudiante se muestra en la páginaWeb Cambiar datos de estudiante.4. El estudiante introduce los cambios en el formulario Web Cambiardatos de estudiante y hace clic en el botón Enviar.5. Los cambios se validan en el servidor Web.6. Se escribe el registro en el Diario de cambios de estudiantes.7. Se actualiza el registro del estudiante en el Archivo maestro de estudiantes.8. Se envía la página Web de confirmación al estudiante.ID de estudiante, contraseñaRegistro de estudiante, ID de estudiante, contraseñaRegistro de estudianteFormulario Web Cambiar datos de estudianteFormulario Web Cambiar datos de estudianteFormulario Web Cambiar datos de estudianteFormulario Web Cambiar datos de estudiante, Registro de estudianteFormulario Web Cambiar datos de estudianteTipo de desencadenador:EstudiantePermitir al estudiante cambiar su propia información tal como el nombre, la dirección de su casa, el númerotelefónico de su casa, la dirección del campus, el número telefónico del campus, el número telefónico celulary demás información mediante el uso de un sitio Web.Información para los pasosExterno TemporalFIGURA 10.7Un escenario de caso de uso se divide en tres secciones:identificación e iniciación, pasos realizados y las condiciones,suposiciones y preguntas.www.xlibros.com
CAPÍTULO 10 • ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 291Una flecha representa a un evento. Los eventos representan cosas que ocurren en cierto momento y lugar.Un diamante representa una decisión (también conocida como ramificación) o una fusión. En las decisioneshay una flecha que entra al diamante y varias que salen de él. Se puede incluir una condición de guardia, que mues-tra los valores de la condición. Las fusiones muestran varios eventos que se combinan para formar un evento.Un rectángulo largo y plano representa una barra de sincronización. Estas barras se utilizan para mostrar lasactividades paralelas, donde puede haber un evento que entre a la barra de sincronización y varios eventos quesalgan de ella, a lo cual se le denomina bifurcación. Una sincronización en la que varios eventos se fusionan enuno solo se denomina unión.Hay dos símbolos que muestran el inicio y fin del diagrama. El estado inicial se muestra como un círculorelleno. El estado final se muestra como un círculo negro rodeado por un círculo blanco.Los rectángulos que rodean otros círculos se denominan carriles (swimlanes). Estos carriles indican particio-namiento y se utilizan para mostrar qué actividades se realizan en cada plataforma, como un navegador, servidoro computadora mainframe; también muestran las actividades que realizan distintos grupos de usuarios. Los carri-les son zonas que pueden describir tanto la lógica como la responsabilidad de una clase.En la figura 10.9 podemos ver un ejemplo de carriles. En esta figura se ilustra un diagrama de actividadpara el caso de uso Cambiar información de estudiante. Empieza con el estudiante al iniciar sesión en el sis-tema mediante el proceso de llenar un formulario Web y hacer clic en el botón Enviar. El formulario se trans-mite al servidor Web, el cual pasa a su vez los datos a la computadora mainframe. La mainframe accede a labase de datos de ESTUDIANTES y pasa el mensaje “No se encontró” o los datos del estudiante seleccionadoal servidor Web.El diamante debajo del estado Obtener registro de estudiante indica esta decisión. Si no se encontró elregistro del estudiante, el servidor Web muestra un mensaje de error en la página Web. Si se encontró el registrodel estudiante, el servidor Web da formato a una nueva página Web que contiene los datos del estudiante en unformulario Web. El estudiante puede cancelar el cambio a través de los estados Iniciar sesión en sistema o In-troducir cambios, y la actividad se detiene.Si el estudiante introduce los cambios en el formulario y hace clic en el botón Enviar, los datos del cambiose transmiten al servidor y se empieza a ejecutar un programa que valida los cambios. Si hay errores se envía unmensaje de error a la página Web; si los datos son válidos se actualiza el registro de estudiantes y se escribe un Re-gistro en el Diario de cambios de estudiantes. Después de una actualización válida, se envía una página Web deconfirmación al navegador y termina la actividad.[condición] [sino]FusiónRamificaciónUniónBifurcaciónInicioActividadFinActividadActividadActividadPodemos agregarcarriles a estediagrama paraasignarresponsabilidades.Las bifurcacionespermiten realizaractividades enparalelo.Las ramificacionespermiten actividadesalternativas segúnlas distintascondiciones.FIGURA 10.8Se utilizan símbolosespecializados para dibujar undiagrama de actividad.www.xlibros.com
292 PARTE III • EL PROCESO DE ANÁLISISCreación de diagramas de actividadPara crear diagramas de actividad hay que preguntarse qué ocurre primero y qué ocurre después. Debemos deter-minar si las actividades se realizarán en secuencia o en paralelo. Si se crearon diagramas de flujo de datos físicos(como vimos en el capítulo 7), hay que examinarlos para determinar la secuencia de las actividades. Busque loslugares en donde se toman decisiones y pregunte qué ocurre en cada uno de los resultados de esas decisiones.También podemos crear diagramas de actividad al examinar todos los escenarios de un caso de uso.Cada ruta a través de las diversas decisiones incluidas en el caso de uso es un escenario distinto. En la rutaprincipal estarían Iniciar sesión en sistema, Recibir formulario Web, Obtener registro de estudiante, Mos-trar datos actuales de estudiante, Introducir cambios, Validar cambios, Actualizar registro de estudiante,Crear registro en Diario de cambios de estudiantes y Mostrar confirmación.Éste no es el único escenario que surge de este caso de uso. Puede haber otros. Una posibilidad podría ser Iniciarsesión en sistema, Recibir formulario Web, Obtener registro de estudiante y Mostrar mensaje de error. Otroescenario podría ser Iniciar sesión en sistema, Recibir formulario Web, Obtener registro de estudiante, Mos-trar datos actuales de estudiante, Introducir cambios, Validar cambios y Mostrar mensaje de error.Crear registro enDiario de cambiosde estudiantesActualizar registrode estudianteDatosválidosDatosválidosID de usuario y contraseñaNo se encontróSe colocaron datos de intercambio encola de mensajesEstado delregistroActualización válidaCancelarCancelarSe actualizóregistroSe escribióregistroIniciar sesiónen sistemaPágina Web cliente Servidor Web MainframeRecibir formularioWebMostrar mensajede errorMostrar datosactuales de estudianteValidar cambiosSe recibieron datos válidosIntroducir cambiosMostrar mensajede errorMostrarconfirmaciónObtener registrode estudianteSe transmitióformularioEnviar mensaje de errorSe envió formulario WebSe recibióformulario WebEnviar mensajes de errorSe envió confirmaciónSe recibierondatos inválidosEstado de validaciónFIGURA 10.9Este diagrama deactividad muestra trescarriles: Página Webcliente, ServidorWeb y Mainframe.www.xlibros.com
CAPÍTULO 10 • ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 293Los carriles son útiles para mostrar cómo se debe transmitir o convertir datos, tales como los que van delsitio Web al servidor, o del servidor a la mainframe. Por ejemplo, el diagrama de actividad de Cambiar registrode estudiante tiene tres carriles.El carril de la izquierda muestra las actividades que ocurren en el navegador cliente. Hay que crear páginasWeb para estas actividades. El carril de en medio muestra las actividades que ocurren en el servidor. Los eventoscomo Se transmitió formulario representan los datos que se transmiten del navegador al servidor; debe haberprogramas en el servidor para recibir y procesar los datos cliente.El carril de la derecha representa la computadora mainframe. En empresas grandes es común para muchasaplicaciones Web trabajar con una computadora mainframe. Gran parte de los datos en las grandes organizacio-nes residen en bases de datos de equipos mainframe y hay una gran cantidad de programas para mainframe enexistencia.Cuando un evento cruza el carril del servidor a la computadora mainframe, debe haber un mecanismo paratransmitir los datos del evento entre las dos plataformas. Los servidores usan un formato distinto para represen-tar datos (ASCII) al que usan las computadoras mainframe (uno llamado EBCDIC). Debe haber middlewarepresente para hacerse cargo de la conversión. A menudo, las computadoras IBM utilizan una cola de mensajes(mqueue). La cola de mensajes recibe datos de los programas del servidor, los coloca en un área de retención yllama a un programa de la mainframe, que por lo general está escrito en un lenguaje conocido como CICS. Esteprograma recupera o actualiza los datos y envía los resultados de vuelta a la cola de mensajes.En el diagrama de actividad de ejemplo antes mostrado, la decisión debajo del estado Obtener registro deestudiante se toma en la computadora mainframe. Esto significa que la cola de mensajes recibe un mensaje “Nose encontró” o recibe el registro de la base de datos para el estudiante. Si la mainframe simplemente colocara Serecibió estado de registro en la cola de mensajes y la decisión se evaluara en el servidor, éste tendría que llamara la mainframe de nuevo para obtener los datos válidos. Esto provocaría que la respuesta llegara más tarde a lapersona que espera en el navegador.O P O R T U N I D A D D E C O N S U L T O R Í A 1 0 . 2Reciclando el entorno de programación“Creo que estoy escribiendo el mismo código una y otra vez”,dice Benito Pérez, un programador que trabaja en el nuevo diseñode un almacén automatizado. “Últimamente he escrito tantos pro-gramas relacionados con cosas de robots que se controlan a símismas: carritos automatizados para la sala de correo, robots devigilancia de edificios, limpiadores de albercas automáticos, poda-dores de césped automáticos, trenes de monorriel y ahora carritosde almacén. Todas son variaciones del mismo tema”.Lisa Bernoulli, gerente del proyecto, ha escuchado este tipo dequejas durante años. Ella le contesta: “Oh, vamos Ben. Estas cosas enrealidad no están tan relacionadas. ¿Cómo puedes comparar un robotde la sala de correo, un almacén automatizado y un tren de monorriel?Apuesto a que menos del 10 por ciento del código es el mismo”.“Mira”, dice Benito. “Los tres involucran máquinas que tienenque buscar un punto inicial, seguir una ruta tortuosa, hacer paradaspara cargar y descargar y, en un momento dado, llegar a un puntofinal. Los tres tienen que tomar decisiones en las ramificaciones desus rutas. Los tres tienen que evitar chocar con cosas. Estoy cansadode rediseñar código que es bastante familiar para mí”.“Hmmm”, reflexiona Lisa mientras da un vistazo a los requeri-mientos básicos del sistema del almacén y recuerda el sistema demonocarril en el que Benito y ella trabajaron el año pasado. Los reque-rimientos se referían a una pequeña empresa de fabricación de apara-tos electrónicos en lotes pequeños que deseaba automatizar su sistemade almacén y movimiento de productos. El almacén contiene piezasentrantes, trabajo en progreso y productos terminados. El almacénautomatizado utiliza un carrito robot de plataforma, similar a un ca-rrito de golf, con la excepción de que no tiene asientos. Los carritos derobot de plataforma tienen una superficie de carga plana de 6 × 4 pies’,aproximadamente a 3 pies por encima del nivel del suelo. Estos carri-tos tienen un dispositivo de radio comunicaciones que provee un en-lace de datos en tiempo real a la computadora central del almacén. Loscarritos de plataforma tienen dos sensores: un sensor de ruta quedetecta un tipo especial de pintura y un sensor de movimientoque detecta el movimiento. Estos carritos siguen rutas pintadas en elpiso de la fábrica. Los códigos especiales de pintura marcan bifurca-ciones y ramificaciones en las rutas, los puntos de inicio y final delcarrito, además de los puntos de ubicaciones en general.Las instalaciones incluyen tres estaciones de puertos de cargay 10 estaciones de trabajo. Cada estación tiene una terminal de vi-deo o computadora conectada a la computadora central. Cuando serequieren productos o cuando están listos para ser recolectados deuna estación, el trabajador en la estación informa a la computadoracentral. Después, la computadora central despacha los carritos se-gún sea apropiado. Cada estación tiene un punto de entrega y unpunto de recolección. Los carritos de plataforma se desplazan porla fábrica recogiendo el trabajo en los puntos de recolección y dejanel trabajo en los puntos de entrega. El programa que opere los carri-tos deberá interactuar mucho con el programa existente para pro-gramar tareas que ayuda a establecer los horarios para las tareas delas estaciones de trabajo.¿Cómo debería Lisa proceder en cuanto a reutilizar el trabajoque hizo Benito Pérez en el monocarril para adaptarlo a su tareaactual de crear un objeto carrito? Explique en dos párrafos.www.xlibros.com
294 PARTE III • EL PROCESO DE ANÁLISISLos carriles también ayudan a dividir las tareas en un equipo. Se requieren diseñadores Web para las páginasWeb que se muestran en el navegador cliente. Otros miembros tendrían que trabajar con lenguajes de programa-ción tales como Java, PHP, Ruby on Rails, PERL o .NET en el servidor. Los programadores de CICS de la main-frame escribirían programas que funcionaran con la cola de mensajes. El analista debe asegurar que los datos quenecesitan los diversos miembros del equipo estén disponibles y definidos en forma correcta. Algunas veces losdatos en la cola de mensajes están en forma de un documento de XML. Si hay una organización externa involu-crada, los datos también podrían ser un documento de XML.El diagrama de actividad provee un mapa de un caso de uso; además permite al analista experimentar almover partes del diseño a distintas plataformas y preguntar: “¿Qué pasaría si?” para una variedad de decisiones.El uso de símbolos únicos y carriles hace de este diagrama algo que las personas desean usar para comunicarsecon los demás.Se pueden usar diagramas de actividad para construir planes de prueba. Hay que evaluar cada evento paraver si el diagrama de actividad pasa al siguiente estado. Hay que evaluar cada decisión para ver si se toma la rutacorrecta cuando ocurren las condiciones de decisión.Los diagramas de actividad no se utilizan para todos los casos. Debe usar diagramas de actividad cuando:1. Le ayude a comprender las actividades de un caso de uso.2. El flujo de control sea complejo.3. Exista la necesidad de modelar el flujo de trabajo.4. Haya que mostrar todos los escenarios.El analista no necesita un diagrama de actividad cuando el caso de uso es simple, o cuando hay que modelar elcambio de estado.También se pueden usar los diagramas de actividad para modelar un método de nivel más bajo, en el que semuestre la lógica detallada.Entradas en el repositorio para un diagrama de actividadCada estado y evento se pueden definir con más detalle mediante el uso de una descripción de texto en el repo-sitorio, el cual es una colección de descripciones de texto para el proyecto. Hay que describir los estados coninformación sobre el estado, tal como el nombre de la página Web, los elementos de la página Web, y otros da-tos. Hay que describir los eventos con la información requerida para comunicarse con el siguiente estado, comolos datos del formulario Web, los datos que se colocan en una cola de mensajes o mediante una descripción delevento que ocasionó la transición, como el clic de un botón.DIAGRAMAS DE SECUENCIA Y DE COMUNICACIÓNUn diagrama de interacción puede ser un diagrama de secuencia o un diagrama de comunicación, ambos de loscuales muestran esencialmente la misma información. Estos diagramas, junto con los diagramas de clases, seutilizan para la realización de un caso de uso, lo cual es una forma de lograr o realizar un caso de uso.Diagramas de secuenciaLos diagramas de secuencia pueden ilustrar una sucesión de interacciones entre clases o instancias de objetos através del tiempo. A menudo, los diagramas de secuencia se utilizan para ilustrar el procesamiento descrito en losescenarios de casos de uso. En la práctica, los diagramas de secuencia se derivan del análisis de casos de uso y seutilizan en el diseño de sistemas para derivar las interacciones, las relaciones y los métodos de los objetos en elsistema. Los diagramas de secuencia se utilizan para mostrar el patrón general de las actividades o interaccionesen un caso de uso. Cada escenario de caso de uso puede crear un diagrama de secuencia, aunque éstos no siem-pre se crean para escenarios de menor importancia.En la figura 10.10 se muestran los símbolos utilizados en los diagramas de secuencia. Los actores y las cla-ses o instancias de objetos se muestran en cuadros en la parte superior del diagrama. El objeto de más a la iz-quierda es el objeto inicial y puede ser una persona (para la cual se utiliza un símbolo de actor de caso de uso),ventana, cuadro de diálogo u otra interfaz de usuario. Algunas de las interacciones son sólo físicas, como la firmade un contrato. Los rectángulos de la parte superior utilizan indicadores en el nombre para indicar si el rectán-gulo representa un objeto, una clase, o una clase y un objeto.nombreObjeto: Un nombre seguido de un signo de dos puntos representa a un objeto.:clase Un signo de dos puntos seguido de un nombre representa a una clase.nombreObjeto:clase Un nombre seguido de un signo de dos puntos y de otro nombre,representa a un objeto en una clase.www.xlibros.com
CAPÍTULO 10 • ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 295Una línea vertical representa la línea de vida de la clase u objeto, que corresponde al tiempo a partir del que se creóhasta el momento en que se destruye. Una X en la parte inferior de la línea de vida representa el momento en quese destruye el objeto. Una barra lateral o un rectángulo vertical en la línea de vida muestran el foco de controlcuando el objeto está ocupado haciendo cosas.Las flechas horizontales muestran mensajes o señales que se envían entre las clases. Los mensajes perte-necen a la clase receptora. Hay algunas variaciones en las flechas de los mensajes. Las puntas de flecha sólidasrepresentan llamadas sincrónicas, que son las más comunes. Éstas se utilizan cuando la clase emisora espera unarespuesta de la clase receptora y el control se devuelve a la clase emisora cuando la clase receptora que recibe elmensaje termina de ejecutarse. Las medias puntas de flecha (o abiertas) representan llamadas asíncronas: aque-llas que se envían sin esperar que la clase emisora las devuelva. Un ejemplo sería el uso de un menú para ejecutarun programa. El retorno se muestra como una flecha, algunas veces con una línea punteada. Los mensajes se eti-quetan mediante el uso de uno de los siguientes formatos: El nombre del mensaje seguido de paréntesis vacíos: nombreMensaje(). El nombre del mensaje seguido de parámetros entre los paréntesis: nombreMensaje(parámetro1,parámetro2 ...). El nombre del mensaje seguido del tipo de parámetro, nombre del parámetro y cualquier valorpredeterminado para el parámetro entre paréntesis: nombreMensaje(tipoParámetro:nombreParámetro-(valorPredeterminado). Los tipos de los parámetros indican el tipo de datos, como cadena, número o fecha. El mensaje puede ser un estereotipo tal como <<Crear>> para indicar que se va a crear un nuevo objetocomo resultado del mensaje.La sincronización en el diagrama de secuencia se muestra de arriba hacia abajo; la primera interacción sedibuja en la parte superior del diagrama y la interacción que ocurre al último se dibuja en la parte inferior deldiagrama. Las flechas de interacción empiezan en la barra del actor u objeto que inicia la interacción y termi-nan apuntando a la barra del actor u objeto que recibe la solicitud de interacción. El actor inicial u objeto semuestra a la izquierda. Éste puede ser el actor que inicia la actividad o una clase que represente la interfaz deusuario.La figura 10.11 es un ejemplo simplificado de un diagrama de secuencia para un caso de uso que admitea un estudiante en una universidad. A la izquierda está la clase interfazUsuarioNuevoEstudiante que seutiliza para obtener la información del estudiante. El mensaje inicializar() se envía a la clase Estudiante, lacual crea un nuevo registro de estudiante y devuelve el número de estudiante. Para simplificar el diagramaomitimos los parámetros que se envían a la clase Estudiante, pero éstos deben incluir el nombre del estu-diante, su dirección y otros. La siguiente actividad es enviar un mensaje seleccionarDormitorio a la clasemétodo(Parámetro)retornoseñalAsíncrona()::Clase Objecto::ClaseFIGURA 10.10Símbolos especializados que seutilizan para dibujar un diagramade secuencia.www.xlibros.com
296 PARTE III • EL PROCESO DE ANÁLISISDormitorio. Este mensaje debe incluir la información de selección del dormitorio, como un dormitorio parael cuidado de la salud u otros requerimientos del estudiante. La clase Dormitorio devuelve el nombre deldormitorio y el número de habitación. La tercera actividad es enviar un mensaje seleccionarPrograma ala clase Programa, incluyendo el nombre del programa y demás información sobre el curso de estudio. Sedevuelve el nombre del consejero del programa a la clase interfazUsuarioNuevoEstudiante. Se envía unmensaje estudianteCompleto a la clase Estudiante con el nombre del dormitorio, del consejero y demásinformación pertinente.Los diagramas de secuencia se pueden utilizar para traducir el escenario de caso de uso en una herramientavisual para el análisis de sistemas. El diagrama de secuencia inicial utilizado en el análisis de sistemas muestralos actores y las clases en el sistema, así como las interacciones entre ellos para un proceso específico. Ustedpuede utilizar esta versión del diagrama de secuencia para verificar los procesos con los expertos del área de ne-gocios que le hayan ayudado a desarrollar los requerimientos del sistema. Un diagrama de secuencia hace énfasisen el orden de los mensajes (secuencia) en el tiempo.Durante la fase de diseño de sistemas, los diagramas de secuencia se refinan para derivar los métodos y lasinteracciones entre las clases. Los mensajes de una clase se utilizan para identificar las relaciones de las clases.Los actores en los primeros diagramas de secuencia se traducen en interfaces y las interacciones de las clasesse traducen en métodos de clase. Los métodos de clase que se utilizan para crear instancias de otras clases yrealizar otras funciones internas del sistema se revelan en el diseño del sistema mediante el uso de diagramasde secuencia.Diagramas de comunicaciónLos diagramas de comunicación se introdujeron en el UML 2.0. Su nombre original en el UML 1.x era diagra-mas de colaboración. Los diagramas de comunicación describen las interacciones entre dos o más cosas en elsistema que desempeñan un comportamiento mayor a lo que cualquiera de las dos cosas pueden hacer por sucuenta. Por ejemplo, un automóvil se puede descomponer en varios miles de piezas individuales. Las piezas seconectan para formar los subsistemas principales del vehículo: el motor, la transmisión, el sistema de frenos,etcétera. Las piezas individuales del automóvil se pueden considerar como clases, ya que tienen distintos atri-butos y funciones. Las piezas individuales del motor forman una colaboración, ya que se “comunican” entre sípara hacer que el motor funcione cuando el conductor pisa el acelerador.Un diagrama de comunicación consta de tres partes: los objetos (también llamados participantes), los enla-ces de comunicación y los mensajes que se pueden pasar a través de esos enlaces. Los diagramas de comunica-::Estudianteinicializar( )seleccionarDormitorio( )estudianteCompleto( )regresar cuartoDormitorioregresar numeroEstudiante::dormitorio ::programa::interfazUsuarioNuevoEstudianteseleccionarPrograma( )regresar consejeroProgramaFIGURA 10.11Un diagrama de secuencia paraadmitir a un estudiante. Losdiagramas de secuencia hacenénfasis en el orden de los mensajesen el tiempo.www.xlibros.com
CAPÍTULO 10 • ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 297ción muestran la misma información que un diagrama de secuencia, pero pueden ser más difíciles de leer. Parapoder mostrar el orden en el tiempo, debemos indicar un número de secuencia y describir el mensaje.Un diagrama de comunicación hace énfasis en la organización de los objetos, mientras que un diagrama desecuencia hace énfasis en el orden de los mensajes en el tiempo. Un diagrama de comunicación mostrará unaruta para indicar cómo está un objeto enlazado con otro.Cierto software de modelado de UML, como Rational Rose de IBM, convierte con el clic de un botón undiagrama de secuencia en un diagrama de comunicación, o un diagrama de comunicación en un diagrama desecuencia. En la figura 10.12 se muestra el diagrama de comunicación para admitir a un estudiante. Cada rectán-gulo representa a un objeto o una clase. Las líneas conectoras muestran las clases que necesitan colaborar o tra-bajar entre sí. Los mensajes que se envían de una clase a otra se muestran a lo largo de las líneas conectoras. Losmensajes están numerados para mostrar la secuencia en el tiempo. También se pueden incluir valores de retornoy se pueden enumerar para indicar cuándo se devuelven dentro de la secuencia de tiempo.DIAGRAMAS DE CLASESLas metodologías orientadas a objetos trabajan para descubrir las clases, atributos, métodos y relaciones entrelas clases. Como la programación ocurre a nivel de clase, definir clases es una de las tareas más importantes delanálisis orientado a objetos. Los diagramas de clases muestran las características estáticas del sistema y no repre-sentan ningún procesamiento en especial. Un diagrama de clases también muestra la naturaleza de las relacionesentre las clases.En un diagrama de clases, las clases se representan mediante un rectángulo. En el formato más simple, elrectángulo puede incluir sólo el nombre de la clase, pero también puede incluir atributos y métodos. Los atribu-tos son lo que la clase conoce sobre las características de los objetos, y los métodos (también llamados operacio-nes) son lo que la clase sabe acerca de cómo hacer las cosas. Los métodos son pequeñas secciones de código quetrabajan con los atributos.La figura 10.13 muestra un diagrama de clases para los ofrecimientos de cursos. Cabe mencionar que elnombre está centrado en la parte superior de la clase, por lo general en negrita. El área justo debajo del nombremuestra los atributos y la porción inferior lista los métodos. El diagrama de clases muestra los requerimientos dealmacenamiento de datos, así como los requerimientos de procesamiento. Más adelante en el capítulo hablare-mos sobre el significado de los símbolos de diamante que se muestran en esta figura.Por lo general los atributos (o propiedades) se designan como privados, o que sólo están disponibles en elobjeto. En un diagrama de clases esto se representa con un signo negativo al inicio del nombre del atributo. Losatributos también pueden ser protegidos, lo cual se indica con un símbolo (#). Estos atributos están ocultos paratodas las clases, excepto las subclases inmediatas. Bajo raras circunstancias un atributo se hace público, lo cualsignifica que otros objetos fuera de su clase pueden verlo. Hacer los atributos privados implica que serán visiblessólo para los objetos externos a través de los métodos de la clase, una técnica que se conoce como encapsula-miento u ocultamiento de la información.Un diagrama de clase puede mostrar sólo el nombre de la clase, el nombre de la clase y los atributos o elnombre de la clase, los atributos y los métodos. Es útil mostrar sólo el nombre de la clase cuando el diagrama esmuy complejo e incluye muchas clases. Si el diagrama es más simple, se pueden incluir los atributos y los méto-dos. Cuando se incluyen los atributos hay tres formas de mostrar la información de cada uno. La más simple esincluir sólo el nombre del atributo, lo cual ocupa la menor cantidad de espacio.1:inicializar( )3:seleccionarPrograma( )2:seleccionarDormitorio( )4:estudianteCompleto( )::estudiante ::programa::dormitorio::ninterfazUsuarioNuevoEstudianteFIGURA 10.12Un diagrama de comunicación para admitir a unestudiante. Los diagramas de comunicación muestranla misma información que se describe en un diagramade secuencia, pero hacen énfasis la organización delos objetos en vez del orden en el tiempo.www.xlibros.com
298 PARTE III • EL PROCESO DE ANÁLISISDepartamento–nombreDepartamento–sillaDepartamento+agregarDepartamento()+verDepartamento()Curso–numeroCurso–descripcionCurso–numeroCreditos–numeroDepartamento+agregarCurso()+cambiarCurso()+buscarCurso()Librotexto–ISBN–autor–titulo–edicion–editorial–requerido+agregarTexto()+cambiarTexto()+buscarTexto()+quitarTexto()Examen–numeroExamen–nombreExamen–puntosExamen–versionExamen+agregarExamen()+cambiarExamen()+buscarExamen()Asignacion–numeroAsignacion–descripcionAsignacion–puntosAsignacion–fechaEntregaAsignacion+agregarAsignacion()+cambiarAsignacion()+verAsignacion()tiene unespartedeespartedeconsistedees para un1 1..consistedeFIGURA 10.13Un diagrama de clases para losofrecimientos de cursos. Losdiamantes rellenos muestranagregación y los diamantesvacíos muestran una relaciónentre un todo y sus partes.Se puede incluir el tipo de datos (como cadena, doble, entero o fecha) en el diagrama de clases. Las des-cripciones más completas incluyen un signo de igual (=) después del tipo de datos, seguido del valor inicial delatributo. La figura 10.14 ilustra los atributos de las clases.Si el atributo debe tomar un valor de un número finito de ellos, como un tipo de estudiante con valores de Cpara tiempo completo, P para tiempo parcial y N para no matriculado, éstos se pueden incluir entre llaves separa-dos por comas: tipoEstudiante: char{F,P,N}.El ocultamiento de información significa que los métodos de los objetos deben estar disponibles para otrasclases, por lo que comúnmente los métodos son públicos, lo cual significa que se pueden invocar desde otrasclases. En un diagrama de clases, los mensajes públicos (al igual que los atributos públicos) se muestran con unsigno positivo (+) al inicio del nombre correspondiente. Los métodos también tienen paréntesis después de sunombre, lo cual indica que se pueden pasar datos como parámetros junto con el mensaje. En el diagrama de cla-ses se pueden incluir los parámetros del mensaje, así como el tipo de datos.Hay dos tipos de métodos: estándar y personalizados. Los métodos estándar son las cosas básicas que todaslas clases de objetos saben cómo hacer, como crear una nueva instancia de un objeto. Los métodos personaliza-dos están diseñados para una clase específica.Sobrecarga de métodosLa sobrecarga de métodos se refiere a incluir el mismo método (u operación) varias veces en una clase. La firmadel método incluye su nombre y los parámetros que incluye. El mismo método se puede definir más de una vezen una clase dada, siempre y cuando los parámetros que se envían como parte del mensaje sean distintos; es de-cir, debe haber una firma de mensaje distinta. Puede haber un número distintos de parámetros, o éstos pueden serde un tipo distinto, como un número en un método y una cadena de texto en otro método. Podemos encontrar unFIGURA 10.14Una clase Estudiante extendidaque muestra el tipo de datos y, enalgunos casos, su valor inicial ovalor predeterminado.EstudiantenumeroEstudiante: IntegerapellidoPaterno: StringprimerNombre: StringcreditosCompletados: Decimal=0.0promedioCalif: Decimal=0.0estudianteActual: Boolean=YfechaInscripcion: Fecha=new()cambiarEstudiante()verEstudiante()www.xlibros.com
CAPÍTULO 10 • ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 299ejemplo de sobrecarga de métodos en el uso de un signo de suma en muchos lenguajes de programación. Si losatributos en ambos lados del signo de suma son números, se suman los dos números. Si los atributos son cadenasde caracteres, las cadenas se concatenan para formar una sola cadena extensa.En un ejemplo de un depósito bancario, un recibo de depósito podría contener sólo el monto a depositar, encuyo caso el banco depositaría el monto completo, o podría contener el monto a depositar y la cantidad de efec-tivo a devolver. Ambas situaciones utilizarían un método de verificación de depósito, pero los parámetros (una delas situaciones también requeriría devolver el monto de efectivo) serían distintos.Tipos de clasesLas clases se dividen en cuatro categorías: de entidad, de interfaz, abstracta y de control. A continuación expli-caremos estas categorías.CLASES DE ENTIDAD Las clases de entidad representan elementos del mundo real como personas o cosas,por ejemplo. Las clases de entidad son las entidades representadas en un diagrama de entidad-relación. Lasherramientas CASE como Visible Analyst le permiten crear una clase de entidad de UML a partir de una entidaden un diagrama E-R.El analista necesita determinar qué atributos debe incluir en las clases. Cada objeto tiene muchos atributos,pero la clase debe incluir sólo aquellos que la organización utilice. Por ejemplo, al crear una clase de entidadpara un estudiante en una universidad necesitamos conocer los atributos que identifican al estudiante, como ladirección de su hogar y del campus al que pertenece, así como el promedio de sus calificaciones, los créditostotales, etcétera. Si tuviera que llevar el registro del mismo estudiante para una tienda de ropa en línea, tendríaque conocer la información básica de identificación además de otros atributos descriptivos como las medidas opreferencias de color.CLASES DE LÍMITE O DE INTERFAZ Las clases de límite o de interfaz proveen los medios para que los usuariostrabajen con el sistema. Hay dos amplias categorías de clases de interfaz: humana y de sistema.Una interfaz humana puede ser una pantalla, una ventana, un formulario Web, un cuadro de diálogo, unmenú, un cuadro de lista u otro control de visualización. También puede ser un teléfono de tonos, código de ba-rras o cualquier otra forma en que los usuarios puedan interactuar con el sistema. Hay que crear prototipos de lasinterfaces humanas (como vimos en el capítulo 6) y a menudo se utiliza un guión gráfico para modelar la secuen-cia de interacciones.Las interfaces del sistema necesitan enviar o recibir datos de otros sistemas. Esto puede incluir a las basesde datos en la organización. Si se envían datos a una organización externa, por lo general se hace en la forma dearchivos de XML u otras interfaces reconocidas con mensajes y protocolos claramente definidos. Las interfacesexternas son las menos estables, ya que a menudo hay muy poco o nada de control sobre un socio externo capazde alterar el formato del mensaje o de los datos.El XML ayuda a proveer estandarización, ya que un socio externo puede agregar nuevos elementos al docu-mento de XML, aunque una corporación que transforme los datos en un formato que se pueda utilizar para agre-gar información a una base de datos interna puede ignorar los elementos adicionales sin ningún problema.Los atributos de estas clases son los que se encuentran en la pantalla o informe. Los métodos son los que serequieren para trabajar con la pantalla o para producir el informe.CLASES ABSTRACTAS Las clases abstractas son clases que no se pueden instanciar en forma directa. Las clasesabstractas están enlazadas a clases concretas en una relación de generalización/especialización (gen/spec). Por logeneral el nombre de una clase abstracta se escribe en cursiva.CLASES DE CONTROL Las clases de control o activas se utilizan para controlar el flujo de actividades; actúancomo un coordinador a la hora de implementar las clases. Para obtener clases que se puedan reutilizar, undiagrama de clases puede incluir muchas clases de control pequeñas. A menudo las clases de control se derivandurante el diseño del sistema.Es común crear una clase de control sólo para poder reutilizar otra clase. Un ejemplo de ello sería el procesode inicio de sesión. Podría haber una clase de control que se encargue de la interfaz de usuario de inicio de sesión,que contiene la lógica para verificar el ID y la contraseña del usuario. El problema que surge es que la clase decontrol del inicio de sesión está diseñada para una pantalla de inicio de sesión específica. Al crear una clasede control de inicio de sesión que maneje sólo la pantalla de inicio de sesión única, los datos se pueden pasar auna clase de control de validación más general, la cual verifica los ID y contraseñas de usuario que recibe de mu-chas otras clases de control que reciben mensajes de interfaces de usuario específicas. Esto incrementa la reutiliza-ción y aísla los métodos de verificación de inicio de sesión de los métodos para manejar la interfaz de usuario.Las reglas para crear diagramas de secuencia son que todas las clases de interfaz deben estar conectadas a unaclase de control. De manera similar, todas las clases de entidad deben estar conectadas a una clase de control. Las cla-ses de interfaz, a diferencia de las otras dos, nunca se conectan de manera directa a las clases de entidad.www.xlibros.com
300 PARTE III • EL PROCESO DE ANÁLISISDefinición de mensajes y métodosPodemos definir cada mensaje mediante una notación similar a la que se describe para el diccionario de da-tos (como vimos en el capítulo 8). La definición debe incluir una lista de los parámetros que se pasan conel mensaje, así como los elementos contenidos en el mensaje de retorno. Los métodos pueden tener lógicadefinida mediante español estructurado, una tabla de decisión o un árbol de decisión, como vimos en el ca-pítulo 9.El analista puede usar las técnicas de balanceo horizontal con cualquier método de clase. Todos los datosque se devuelven de una clase de entidad se deben obtener de los atributos almacenados en la clase de entidad,de los parámetros que se pasan en el mensaje que se envía a la clase o como resultado de un cálculo realizadopor el método de la clase. Hay que examinar la lógica y los parámetros del método para asegurar que la lógicadel método tenga toda la información requerida para completar su tarea. En el capítulo 7 se describe el balanceohorizontal con más detalle.CÓMO MEJORAR LOS DIAGRAMAS DE SECUENCIAUna vez dibujado el diagrama de clases, tal vez sea conveniente regresar al diagrama de secuencia e incluir sím-bolos especiales para cada uno de los distintos tipos de clases que introdujimos en la sección anterior. En particu-lar, los diagramas de secuencia pueden ser abrumadores si un analista no tiene una metodología sistemática paradibujarlos. Los siguientes pasos son un método útil para mejorar un diagrama de secuencia:1. Incluya el actor del diagrama de caso de uso en el diagrama de secuencia mejorado. Éste será una figura depalitos del diagrama de caso de uso. Puede haber un actor adicional del lado derecho del diagrama, comouna compañía de tarjetas de crédito o un banco.2. Defina una o más clases de interfaz para cada actor. Cada actor debe tener su propia clase de interfaz.3. Cree prototipos de páginas Web para todas las interfaces humanas.4. Asegúrese de que cada caso de uso tenga una clase de control, aunque se pueden crear más durante el diseñodetallado. Busque esa clase de control e inclúyala en el diagrama de secuencia.5. Examine el caso de uso para ver qué clases de entidad están presentes. Incluya éstas en el diagrama.6. Tenga en cuenta que el diagrama de secuencia se puede modificar de nuevo al realizar el diseño detallado,como cuando se crean páginas Web o clases de control adicionales (una para cada formulario Web enviado).7. Para obtener un mayor grado de reutilización, considere mover los métodos de una clase de control a unaclase de entidad.Un ejemplo de clase para WebLas clases también se pueden representar mediante el uso de símbolos especiales para las clases de entidad, delímite (o interfaz) y de control. A estos símbolos se les denomina estereotipos, una extensión para el UML; sonsímbolos especiales que se pueden utilizar durante el análisis, pero a menudo se utilizan al momento de realizarel diseño orientado a objetos. Estos símbolos permiten al analista la libertad de jugar con el diseño para optimi-zar el grado de reutilización.Los distintos tipos de clases se utilizan con frecuencia al trabajar en la fase de diseño de sistemas. La figura10.15 es un ejemplo que muestra un diagrama de secuencia que representa a un estudiante que ve su informaciónpersonal y del curso. En el diagrama, :Interfaz de usuario ver estudiante es un ejemplo de una clase de inter-faz; :Estudiante, :Seccion y :Curso son ejemplos de clases de entidad; :Controlador interfaz ver estudiante y:Calcular promedio calificacion son clases de control.El estudiante se muestra a la izquierda como un actor y proporciona un inicioSesionUsuario a la clase:Interfaz de usuario ver estudiante. Éste es un formulario Web que obtiene el ID y la contraseña del usuario.Cuando el estudiante hace clic en el botón Enviar, el formulario Web se pasa a un :Controlador interfaz verestudiante. Esta clase es responsable de la coordinación al enviar los mensajes y recibir la información devueltapor las demás clases.El :Controlador interfaz ver estudiante envía un mensaje obtenerEstudiante() a la clase :Estudiante, lacual lee una tabla en la base de datos y procede a devolver los datosEstudiante.La paginaWebEstudiante se devuelve a la :Interfaz de usuario ver estudiante, la cual muestra la in-formación en el navegador Web. Al final de la página hay un botonSiguiente, en el cual el estudiante haceclic para ver los cursos. Hacer clic en este botón envía un formulario Web al :Controlador interfaz ver es-tudiante. Este formulario contiene el numeroEstudiante() que se envía junto con la paginaWebEstudiantey se utiliza para enviar un mensaje a la clase :Seccion para que obtenga la calificación de la sección. Si nose enviara el numeroEstudiante() en forma automática, el estudiante tendría que introducir su numeroEstu-www.xlibros.com
CAPÍTULO 10 • ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 301diante() de nuevo, lo cual implicaría un insatisfactorio tecleo redundante. Cabe mencionar que la clase :Estu-diante no está involucrada y que el foco de control (la barra vertical conectada a la clase :Estudiante) terminaantes de que empiece el segundo conjunto de actividades (las flechas horizontales que apuntan a la derecha).La clase :Controlador interfaz ver estudiante envía un mensaje obtenerSeccion() a la clase :Seccion, lacual devuelve una calificacionSeccion. La clase :Seccion también envía un mensaje calcularGPA() a la clase:Calcular promedio calificacion, la cual envía un mensaje de vuelta a la clase :Curso. La clase :Curso de-vuelve los creditos que permiten a la clase :Calcular promedio calificacion determinar el GPA y devolverlo al:Controlador interfaz ver estudiante.:Interfaz deusuario verestudiante:Controladorinterfaz verestudiante:Estudiante :Seccion :Curso:CalcularpromediocalificacionClase delímite ode interfazClase deentidadClase decontrolEstudianteproveerinicioSesionUsuario iniciarSesion() obtenerEstudiante()regresardatosEstudianteregresar pagina-WebEstudianteregresarpaginaWebCursomostrarpaginaWebCursomostrar pagina-WebEstudiantehacer clic enbotonSiguienteenviarnumeroEstudiante( ) obtenerSeccion( )regresarcalificacionSeccioncalcularGPA( )obtenerCurso( )regresar creditosobtenerCreditos( )regresar datosCursoregresar GPAFIGURA 10.15Un diagrama de secuencia para usar dos páginas Web: una para lainformación del estudiante y la otra para la información del curso.www.xlibros.com
302 PARTE III • EL PROCESO DE ANÁLISISEl :Controlador interfaz ver estudiante repite el envío de mensajes a la clase :Seccion hasta que se ha-yan incluido todas las secciones para el estudiante. En este momento, :Controlador interfaz ver estudianteenvía la paginaWebCurso a la clase :Interfaz usuario ver estudiante, que muestra la información en elnavegador.Al utilizar las clases de interfaz de usuario, de control y de entidad, el analista puede explorar el diseño yexperimentar con él. El diseño antes mencionado mostraría toda la información personal del estudiante en unapágina y la información del curso en una segunda página. El analista puede modificar el diseño de manera que lainformación personal del estudiante y la información del curso aparezcan en una página Web. Estos dos posiblesescenarios se revisarían con los usuarios para determinar la mejor opción.Una de las dificultades para el analista es determinar cómo incluir el numeroEstudiante después de hacerclic en el botón Siguiente, ya que la clase :Estudiante no está disponible en ese momento. Hay tres formas dealmacenar y retransmitir los datos desde una página Web:1. Incluir la información en el URL que se muestra en el área de dirección o ubicación del navegador. En estecaso, la línea de la ubicación podría mostrar algo así: http://www.cpu.edu/estudiante/consultestud.html?numeroEstudiante=12345Todo lo que va después del signo de interrogación son datos que los métodos de clase pueden utilizar.Este medio de almacenar los datos es fácil de implementar y se utiliza con frecuencia en los motores debúsqueda.Hay varias desventajas en cuanto a usar este método, por lo que el analista debe tener cuidado. Laprimera preocupación es la privacidad; cualquiera puede leer la dirección Web. Si la aplicación involucrainformación médica, números de tarjeta de crédito, etcétera, ésta no es una buena opción. La mayoría de losnavegadores también muestran los datos de direcciones Web anteriores en sesiones posteriores si el usuariointroduce los primeros caracteres, por lo que la información se puede ver comprometida, dando pie al robode identidad. Una segunda desventaja es que por lo general los datos se pierden una vez que el usuario cierrael navegador.2. Almacenar la información en una cookie: un pequeño archivo almacenado en la computadora cliente(navegador). Las cookies constituyen la única forma de almacenar datos para que persistan más allá dela sesión actual del navegador. Esto permite a la página Web mostrar un mensaje tal como “Bienvenidode vuelta, Robin. Si no es usted Robin, haga clic aquí”. Por lo general las cookies almacenan números decuenta de claves primarias pero no números de tarjetas de crédito u otro tipo de información privada. Lascookies están limitadas a 20 por dominio (como www.cpu.edu) y cada cookie debe ser de 4,000 caractereso menor.El analista debe trabajar con otras unidades de negocios para determinar quién necesita usar cookies ydebe haber cierto control central sobre los nombres utilizados en las cookies. Si la organización necesitatener más de 20 cookies, una solución común es crear distintos nombres de dominio utilizados por laorganización, como soporte.cpu.edu o capacitacion.cpu.edu.3. Use campos ocultos en los formularios Web. Por lo general estos campos contienen datos que envía elservidor, son invisibles y no ocupan espacio en la página Web. En el ejemplo sobre ver informacióndel estudiante, la clase :Controlador interfaz ver estudiante agregó un campo oculto que contieneel numeroEstudiante al formulario paginaWebEstudiante junto con el botonSiguiente. Cuando elestudiante hace clic en el botonSiguiente, se envía el numeroEstudiante al servidor y el :Controladorinterfaz ver estudiante sabe para cuál estudiante debe obtener la información sobre el curso y lacalificación. Los datos en formularios ocultos no se guardan de una sesión a otra del navegador, por lo quese mantiene la privacidad.Las capas de presentación, negocios y persistencia en los diagramas de secuenciaEn el ejemplo anterior mostramos todas las clases en el mismo diagrama. Al escribir código para sistemas es útilanalizar los diagramas de secuencia como si tuvieran tres capas:1. La capa de presentación, que representa lo que ve el usuario. Esta capa contiene las clases de interfaz o delímite.2. La capa de negocios, que contiene las reglas únicas para esta aplicación. Esta capa contiene las clases decontrol.3. La capa de persistencia o acceso a los datos, que describe la forma de obtener y almacenar los datos. Estacapa contiene las clases de entidad.Lo ideal sería escribir código de programa separado para cada una de estas capas.Con la introducción de Ajax, las líneas se volvieron borrosas. Ajax, un acrónimo para JavaScript y XMLasíncrono, es una colección de técnicas que permiten a las aplicaciones Web recuperar información del servidorwww.xlibros.com
CAPÍTULO 10 • ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 303sin alterar la visualización de la página actual. Esto resulta ser una ventaja debido a que no hay que volver a car-gar toda la página Web si recibimos datos adicionales del servidor.Antes de la creación de Ajax, el usuario que visitaba una página Web respondía algunas preguntas mediantela introducción de datos en un formulario basado en Web y después tenía que esperar hasta que se cargara unanueva página. Esto era necesario debido a que el código para validar, obtener los datos y después responder alusuario residía en el servidor. Con la llegada de Ajax, la página Web se actualiza con rapidez debido a que granparte del proceso de validación y demás lógica de control se incluye ahora en el código de JavaScript del nave-gador o del lado del cliente. Esto significa que las reglas de negocios se incluyen tanto en la clase de límite comoen la clase de control, por lo que no es posible tener tres capas.CÓMO MEJORAR LOS DIAGRAMAS DE CLASESLos símbolos de clases también se pueden usar en los diagramas de clases y de comunicación. La figura10.16 ilustra el diagrama de clases para un estudiante que ve su información personal y del curso en páginasWeb. Cada clase tiene atributos y métodos (los cuales no se muestran en los diagramas que utilizan esta no-tación).Si la clase es de tipo interfaz de usuario, los atributos son los controles (o campos) en la pantalla o formu-lario. Los métodos serían los que trabajan con la pantalla, como enviar o restablecer. También podrían ser Java-Script para una página Web, ya que el código trabaja de manera directa con la página Web.Si la clase es una clase de control, los atributos serían aquellos que se necesitan para implementar la clase,como las variables que se utilizan sólo en la clase de control. Los métodos serían aquellos utilizados para realizarcálculos, tomar decisiones y enviar mensajes a otras clases.Si la clase es una clase de entidad, los atributos representan a los atributos almacenados para la entidad ylos métodos que trabajan directamente con la entidad, como crear una instancia, modificar, eliminar, obtener oimprimir.Los sitios Web pueden usar una combinación de muchas clases para cumplir con los objetivos deusuario. Por ejemplo, un sitio Web puede usar JavaScript para realizar una validación previa de los datosy después pasarlos a las clases de control del servidor que realizan una validación detallada, incluyendola obtención de los datos. A su vez, las clases de control del servidor pueden enviar JavaScript de vuelta a lapágina Web para aplicar cierto formato. Es muy común que una aplicación Web involucre a muchas clases,algunas de las cuales contienen sólo una línea de código, en un método para poder lograr el objetivo de lareutilización.Estudiante:Estudiante :Curso:Controladorinterfaz verestudiante:Seccion:Calcularpromediocalificacion:Interfaz deusuario verestudianteFIGURA 10.16Un diagrama de clases para lapaginaWebEstudiante que utilizasímbolos de clase especiales.www.xlibros.com
304 PARTE III • EL PROCESO DE ANÁLISISRelacionesOtra manera de mejorar los diagramas de clases es mostrar las relaciones. Éstas son conexiones entre las clases,de manera similar a las que se encuentran en un diagrama de entidad-relación. Las relaciones se muestran comolíneas que conectan a las clases en un diagrama de clases. Hay dos categorías de relaciones: asociaciones y rela-ciones entre un todo y sus partes.ASOCIACIONES El tipo más simple de relación es una asociación, o conexión estructural entre clases u objetos.Las asociaciones se muestran como una simple línea en un diagrama de clases. Los puntos finales de la línea seetiquetan con un símbolo que indica la multiplicidad, que es lo mismo que la cardinalidad en un diagrama deentidad-relación. Un cero representa ninguno, un uno representa uno y sólo uno; un asterisco representa muchos.La notación 0..1 representa de cero a uno y la notación 1..* representa de uno a muchos. En la figura 10.17 semuestran las asociaciones.Estudiante graduado–numeroEstudiante–creditosCompletados–calificacionPromedio–departamento–especialidad–numeroTesis–consejero+aceptarEstudiante()+verEstudiante()+cambiarEstudiante()+graduarEstudiante()Tesis–numeroTesis–numeroEstudiante–tituloTesis–fechaInicio–fechaTerminacion–fechaAprobacion–aprobadaPor+agregarTesis()+cambiar()+aprobarTesis()1 1tieneEstudiante–numeroEstudiante–creditosCompletados–calificacionPromedio–departamento–especialidad+inicializar()+verEstudiante()+cambiarEstudiante()+graduarEstudiante()Curso–numeroCurso–descripcionCurso–numeroDeCreditos–numeroDepartamento+agregarCurso()+cambiarCurso()+buscarCurso()1 1..se inscribe enEstudiante–numeroEstudiante–creditosCompletados–calificacionPromedio–departamento–especialidad+inicializar()+verEstudiante()+cambiarEstudiante()+graduarEstudiante()Cuarto dormitorio–nombreDormitorio–numeroCuarto–tamanioCuarto–generoOcupante–numeroVacantes+agregarCuarto()+cambiarCuarto()+buscarCuarto()+cambiarVacantes()1 0..se asigna aEstudiante–numeroEstudiante–creditosCompletados–calificacionPromedio–departamento–especialidad+inicializar()+verEstudiante()+cambiarEstudiante()+graduarEstudiante()Actividad voluntaria–numeroActividad–descripcionActividad–organizacionActividad–fechaActividad–numeroEstudiante+agregarActividad()+cambiarActividad()+buscarActividad()+agregarVoluntario()1participa enFIGURA 10.17Tipos de asociaciones que puedenocurrir en los diagramas de clases.www.xlibros.com
CAPÍTULO 10 • ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 305Los diagramas de clases no restringen el límite inferior para una asociación. Por ejemplo, una asocia-ción podría ser 5..*, lo cual indica que debe haber un mínimo de 5 presentes. Lo mismo se aplica para loslímites superiores. Por ejemplo, el número de cursos en los que está inscrito actualmente un estudiante po-dría ser 1..10, lo cual representa de 1 a 10 cursos. También se puede incluir un rango de valores separadospor comas, como 2, 3, 4. En el modelo de UML, las asociaciones por lo general se etiquetan con un nombredescriptivo.Las clases de asociaciones son aquellas que se utilizan para descomponer una asociación de muchos a mu-chos entre las clases. Son similares a las entidades asociativas en un diagrama de entidad-relación. Estudiante yCurso tienen una relación de muchos a muchos; para resolver esta relación se agrega una clase de asociación lla-mada Seccion entre las clases de Estudiante y Curso. La figura 10.18 muestra una clase de asociación llamadaSeccion con una línea punteada conectada a la línea de la relación de muchos a muchos.Un objeto en una clase puede tener una relación con otros objetos en la misma clase; a esto se le denominaasociación reflexiva. Un ejemplo sería una tarea que tenga una tarea precedente, o un empleado que supervisa aotro empleado. Esto se muestra como una línea de asociación que conecta a la clase consigo misma, con etique-tas que indican los nombres de los roles, como tarea y tarea precedente.RELACIONES ENTRE UN TODO Y SUS PARTES Estas relaciones se dan cuando una clase representa al objeto comoun todo y otras clases representan partes de ese objeto. El todo actúa como un contenedor para las partes. Paramostrar estas relaciones en un diagrama de clases se utiliza una línea con un diamante en un extremo. El diamanteestá conectado al objeto que es el todo. Las relaciones entre un todo y sus partes (así como la agregación, queveremos más adelante) se muestran en la figura 10.19.Una relación entre un todo y sus partes puede ser un objeto entidad que tenga partes distintas, como un sis-tema computarizado que incluye computadora, impresora, pantalla, etc., o un automóvil que tiene un motor, sistemade frenos, transmisión, etc. También es posible usar relaciones entre un todo y sus partes para describir una in-terfaz de usuario en la que una pantalla de GUI contiene una serie de objetos como listas, cuadros o botones deopción, o tal vez un encabezado, cuerpo y área del pie. Las relaciones entre un todo y sus partes tienen tres cate-gorías: agregación, colección y composición.Agregación Una agregación se describe comúnmente como una relación “tiene un”. La agregación provee elmedio para mostrar que todo el objeto está compuesto de la suma de sus partes (otros objetos). En el ejemplode inscripción de estudiantes, el departamento tiene un curso y el curso es para un departamento. Ésta es unarelación más débil, ya que tal vez el departamento cambie o se elimine y el curso puede seguir existiendo. Unpaquete de computadora tal vez ya no esté disponible, pero las impresoras y los demás componentes siguenexistiendo. El diamante al final de la línea de la relación no está relleno.Colección Una colección consiste de un todo y sus miembros. Éste puede ser un distrito de votación con votanteso una biblioteca con libros. Los votantes o libros pueden cambiar, pero el todo retiene su identidad. Ésta es unaasociación débil.Estudiante–numeroEstudiante–creditosCompletados–calificacionPromedio–departamento–mayor–menor+cambiarEstudiante()+buscarEstudiante()+graduarEstudiante()+inicializar()+estudianteCompleto()+verEstudiante()Curso–numeroCurso–descripcionCurso–numeroDeCreditos–numeroDepartamento+agregarCurso()+cambiarCurso()+buscarCurso()Sección–numeroEstudiante–numeroCurso–anio–semestre–calificacion+agregarSeccion()+cambiarCalificacion()+inscribirEstudiante()+registrarCalificacion()+retirarEstudiante()1.. 0..tienetomaFIGURA 10.18Un ejemplo de una claseasociativa en la que una secciónespecífica define la relación entreun estudiante y un curso.www.xlibros.com
306 PARTE III • EL PROCESO DE ANÁLISISComposición La composición es una relación entre un todo y sus partes, donde el todo tiene una responsabilidadpor cada parte. Es una relación más fuerte y por lo general se muestra con un diamante relleno. Las palabrasclave para la composición son una clase “siempre contiene” a otra clase. Si el todo se elimina, todas las partes seeliminan. Un ejemplo sería una política de seguros con cláusulas adicionales. Si se cancela la póliza tambiénse cancelan las cláusulas adicionales del seguro. En una base de datos se establecería la integridad referencialpara eliminar los registros hijos en cascada. En una universidad hay una relación de composición entre uncurso y una asignación, así como entre un curso y un examen. Si se elimina el curso se eliminan también lasasignaciones y los exámenes.Diagramas de generalización/especialización (gen/spec)Un diagrama de generalización/especialización (gen/spec) se puede considerar un diagrama de clases mejo-rado. Algunas veces es necesario separar las generalizaciones de las instancias específicas. Como vimos alprincipio de este capítulo, un oso koala es parte de una clase de marsupiales, que a su vez es parte de unaclase de animales. Algunas veces necesitamos diferenciar si un oso koala es un animal o si es un tipo de ani-mal. Además, un oso koala puede ser un animal de peluche. Por lo tanto, a menudo es necesario aclarar estassutilezas.GENERALIZACIÓN Una generalización describe una relación entre un tipo general de cosa y un tipo másespecífico de cosa. Este tipo de relación se describe comúnmente como una relación “es un”. Por ejemplo, unauto es un vehículo y un camión es un vehículo. En este caso, el vehículo es la cosa general, mientras que auto ycamión son las cosas más específicas. Las relaciones de generalización se utilizan para modelar la herencia y laespecialización de las clases. A una clase general se le conoce algunas veces como superclase, clase base o clasepadre; a una clase especializada se le llama subclase, clase derivada o clase hija.HERENCIA Varias clases pueden tener los mismos atributos y/o métodos. Cuando esto ocurre, se crea una clasegeneral que contiene los atributos y métodos comunes. La clase especializada recibe o hereda los atributosy métodos de la clase general. Además, la clase especializada tiene atributos y métodos únicos que sólo sedefinen en ella. Al crear clases generalizadas y permitir que la clase especializada herede los atributos y métodosayudamos a fomentar la reutilización, ya que el código se utiliza muchas veces. Esto también ayuda a mantenerel código existente del programa. Así, el analista puede definir los atributos y métodos una vez, pero usarlosmuchas veces en cada clase heredada.Estudiante–numeroEstudiante–creditosCompletados–calificacionPromedio–departamento–mayor–menor+cambiarEstudiante()+buscarEstudiante()+graduarEstudiante()+inicializar()+estudianteCompleto()+verEstudiante()Organización del campus–numeroOrganizacion–nombreOrganizacion–tipoOrganizacion–presidente–tesorero–secretario–saldoCuenta–numeroDeMiembros+cambiar()+cambiarOficiales()+nuevo()Actividad de recaudaciónde fondos–numeroActividad–descripcionActividad–tipoActividad–montoGastado–montoRecibido–fechaCompletada+cambiar()+nuevo()+registrarMonto()FIGURA 10.19Un ejemplo de relaciones entre untodo y sus partes y de agregación.www.xlibros.com
CAPÍTULO 10 • ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 307Una de las características especiales de la metodología orientada a objetos es la creación y el mantenimientode extensas bibliotecas de clases disponibles en muchos lenguajes. Por ejemplo, un programador que utilice Java,.NET o C# tendrá acceso a una enorme cantidad de clases que ya se han desarrollado.POLIMORFISMO El polimorfismo (que significa muchas formas) o redefinición de métodos (no es lo mismoque sobrecarga de métodos) es la capacidad de un programa orientado a objetos de tener varias versiones deun mismo método con el mismo nombre dentro de una relación superclase/subclase. La subclase hereda unmétodo padre pero le puede agregar elementos o modificarlo. La subclase puede cambiar el tipo de los datos, opuede cambiar la forma en que trabaja el método. Por ejemplo, podría haber un cliente que reciba un descuentoadicional por volumen, con lo que se usaría un método modificado para calcular el total del pedido. Se dice queel método de la subclase redefine al método de la superclase.Cuando los atributos o métodos se definen más de una vez, se utiliza el más específico (el más bajo en lajerarquía de clases). El programa compilado recorre la cadena de clases en busca de los métodos.CLASES ABSTRACTAS Las clases abstractas son clases generales y se utilizan cuando se incluye la generalización/especificación (gen/spec) en el diseño. La clase general se convierte en la clase abstracta. La clase abstracta notiene objetos directos o instancias de clase, y se utiliza sólo en conjunto con clases especializadas. Por lo generallas clases abstractas tienen atributos y pueden tener unos cuantos métodos.La figura 10.20 es un ejemplo de un diagrama de clases de generalización/especificación. La flecha apuntaa la clase general, o superclase. A menudo las líneas que conectan dos o más subclases con una superclase sePersona–apellidoPaterno–primerNombre–calle–apartamento–ciudad–estado–cp–telefono–telCelular–email+cambiarDireccion()+cambiarNombre()Estudiante–numeroEstudiante–creditosCompletados–calificacionPromedio–departamento–especialidad–esmenor+cambiarEstudiante()+buscarEstudiante()+graduarEstudiante()+inicializar()+estudianteCompleto()+verEstudiante()Empleado–numeroEmpleado–salario–AAFBruto–AAFRetencion–fechaContratacion–departamento+cambiarEmpleado()+imprimirInformacionImpuestos()+producirChequeNomina()puedeserunesunpuedeserunesunDocente–titulo–puesto–urlWeb+cambiarPosicion()+cambiarURL()Administrador–titulo+cambiarEmpleado()puedeserunesunpuedeserunesuntipodeFIGURA 10.20Un diagrama de generalización/especificación es una formarefinada de un diagrama de clases.www.xlibros.com
308 PARTE III • EL PROCESO DE ANÁLISISunen mediante una flecha que apunta a la superclase, pero también se podrían mostrar como flechas separadas.Observe que el nivel superior es Persona, la clase que representa a cualquier persona. Los atributos describencualidades que poseen todas las personas en la universidad. Los métodos permiten a la clase cambiar el nom-bre y la dirección (incluyendo el teléfono y la dirección de correo electrónico). Ésta es una clase abstracta, sininstancias.Estudiante y Empleado son subclases ya que tienen distintos atributos y métodos. Un empleado no tiene unacalificación promedio y un estudiante no tiene un salario. Ésta es una versión simple y no incluye a los emplea-dos que son estudiantes ni a los estudiantes que trabajan para la universidad. Si se agregaran, serían subclases delas clases Empleado y Estudiante. Empleado tiene dos subclases, Docente y Administrador, ya que hay dis-tintos atributos y métodos para cada una de estas clases especializadas.Las subclases cuentan con verbos especiales para definirlas. A menudo son palabras seguidas, como esunpara “es un”, esuntipode para “es un tipo de” y puedeserun para “puede ser un”. No hay distinción entre “es un”y “es una”; ambas utilizan esun.esun Docente esun Empleadoesuntipode Administrador esuntipode Empleadopuedeserun Empleado puedeserun DocenteIDENTIFICAR CLASES ABSTRACTAS Tal vez pueda identificar las clases abstractas si encuentra varias clases otablas de base de datos que tengan los mismos elementos, o si varias clases tienen los mismos métodos. Podemoscrear una clase general al extraer los atributos y métodos comunes, o podríamos crear una clase especializadapara los atributos y métodos únicos. Si usamos un ejemplo bancario como un retiro, un pago sobre un préstamo ola escritura de un cheque, todos tendrán el mismo método: restar dinero del saldo del cliente.BUSCAR CLASES Hay varias formas de determinar las clases. Se pueden descubrir durante las sesiones deentrevista o JAD (que vimos en el capítulo 4), durante las sesiones facilitadas del equipo o a partir de lassesiones de lluvia de ideas. Al analizar documentos y memos también se pueden revelar clases. Una delas formas más sencillas es usar el método CRC que vimos antes en este capítulo. El analista también debeexaminar los casos de uso en busca de sustantivos. Cada sustantivo puede generar un candidato a una clasepotencial. Se les llama clases candidatas debido a que algunos de los sustantivos pueden ser atributos de unaclase.Cada clase debe existir para un objeto distinto que tenga una definición clara. Pregúntese qué conoce laclase, los atributos; y qué es lo que la clase sabe cómo hacer, los métodos. Identifique las relaciones entre clasesy la multiplicidad para cada extremo de la relación. Si la relación es de muchos a muchos, cree una clase de in-tersección o asociativa, similar a la entidad asociativa en un diagrama de entidad-relación.DETERMINAR LOS MÉTODOS DE LAS CLASES El analista debe determinar los atributos y métodos de las clases.Los atributos son fáciles de identificar, pero los métodos que trabajan con los atributos pueden ser más difícilesde identificar. Algunos de los métodos son estándar y siempre están asociados con una clase, como new(), o elmétodo <<crear>>, que es una extensión para el UML creada por una persona u organización, a lo cual se leconoce como estereotipo. Los símbolos << y >> no son simplemente pares de símbolos mayor que y menor que,sino que se les conoce como paréntesis angulares.Otra manera útil de determinar los métodos es examinar una matriz CRUD (vea el capítulo 7). La figura10.21 muestra una matriz CRUD para los ofrecimientos de cursos. Cada letra requiere un método distinto. Sihay una C para crear, se agrega un método new(). Si hay una U para actualizar, se agrega un método actualizar()o cambiar(). Si hay una D para eliminar, se agrega un método eliminar() o quitar(). Si hay una R para leer, seagregan métodos para buscar, ver o imprimir. En el ejemplo mostrado, la clase librotexto necesitaría un métodocrear para agregar un libro de texto y un método leer para iniciar una consulta sobre un curso, cambiar un librode texto o buscar un libro de texto. Si se reemplazara un libro de texto se necesitaría un método actualizar, y si sequitara un libro de texto se requeriría un método eliminar.MENSAJES Para poder lograr un trabajo útil, la mayoría de las clases necesitan comunicarse entre sí. Lainformación se puede enviar mediante un objeto en una clase a un objeto en otra clase a través de un mensaje,en forma similar a una llamada en un lenguaje de programación tradicional. Un mensaje también actúa comocomando para indicar a la clase receptora que haga algo. Un mensaje consiste en el nombre del método en laclase receptora, así como los atributos (parámetros o argumentos) que se pasan con el nombre del método. La clasereceptora debe tener un método que corresponda al nombre del mensaje.www.xlibros.com
CAPÍTULO 10 • ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 309Actividad Departamento Curso Librotexto ExamenAgregar departamento CVer departamentoAgregar cursoCCambiar cursoRUConsulta de curso R R R RRCURRAgregar libro de textoCambiar libro de texto RRRRRRBuscar libro de textoEliminar libro de texto RAgregar asignación RCambiar asignación RAsignacionDCRUCambiar asignación R RVer asignación R RAgregar examen R RUCambiar examen R RFIGURA 10.21Se puede usar una matriz CRUDpara ayudar a determinar quémétodos se necesitan. Esta matrizCRUD se utiliza para determinarlos métodos y las operacionespara los ofrecimientos de cursos.Como los mensajes se envían de una clase a otra, se pueden considerar como entrada o salida. La primeraclase debe proveer los parámetros incluidos con el mensaje y la segunda clase utiliza esos parámetros. Si existeun diagrama de flujo de datos hijo físico para el dominio del problema, puede ser útil para descubrir métodos. Elflujo de datos de un proceso primitivo a otro representa el mensaje y hay que examinar los procesos primitivoscomo candidatos a métodos.DIAGRAMAS DE ESTADOSEl diagrama de estados, o de transiciones de estado, es otra herramienta para determinar los métodos de las cla-ses. Se utiliza para examinar los distintos estados que puede tener un objeto.Se crea un diagrama de estados para una sola clase. Por lo general los objetos se crean, pasan por cambios yse eliminan o quitan.Los objetos existen en estos diversos estados, que son las condiciones de un objeto en un momento especí-fico. Los valores del atributo de un objeto definen el estado en que se encuentra el objeto y algunas veces hayun atributo tal como Estado del pedido (pendiente, en recolección, empaquetado, enviado, recibido, etcétera) queindica el estado. Un estado tiene un nombre en el que cada palabra empieza con mayúscula. El nombre debe serúnico y descriptivo. Un estado también tiene acciones de entrada y de salida: las cosas que el objeto debe hacercada vez que entra o sale de un estado específico.Un evento es algo que ocurre en un tiempo y lugar específicos. Los eventos provocan un cambio delestado del objeto y se dice que una transición se “dispara”. Los estados separan eventos, como un pedidoque espera a ser llenado, y los eventos separan estados, como un evento Pedido recibido o un evento Pedidocompleto.Un evento produce la transición y ocurre cuando se cumple una condición de guardia. Esta condición deguardia es algo que se evalúa como verdadero o falso y puede ser tan simple como “Hacer clic para confirmar elpedido”. También puede ser una condición que ocurra en un método, como un elemento que esté agotado. Lascondiciones de guardia se muestran entre corchetes a un lado de la etiqueta del evento.www.xlibros.com
310 PARTE III • EL PROCESO DE ANÁLISISAdemás hay eventos diferidos, o eventos que se retienen hasta que un objeto cambia a un estado que puedaaceptarlos. Un usuario que teclea algo cuando un procesador de palabras realiza un respaldo sincronizado es un ejem-plo de un evento diferido. Una vez que se completa el respaldo sincronizado, el texto aparece en el documento.Los eventos se clasifican en tres categorías distintas:1. Señales o mensajes asíncronos, que ocurren cuando el programa que hace la llamada no espera un mensajede retorno, como una característica que se opera desde un menú.2. Mensajes sincrónicos, que son llamadas a funciones o subrutinas. El objeto que hace la llamada se detiene yespera a que se le regrese el control, junto con un mensaje opcional.3. Eventos temporales, que ocurren en un tiempo predeterminado. Por lo general no involucran a un actor o aun evento externo.Los objetos materiales tienen persistencia; es decir, existen durante un extenso periodo de tiempo. Losvuelos de aviones, conciertos y eventos deportivos tienen una persistencia más corta (pueden tener estados quecambian en un tiempo más corto). Algunos objetos, conocidos como objetos transitorios, no sobreviven al finalde una sesión. Éstos incluyen la memoria principal, los datos de una URL (o ubicación) Web, las páginas Web,pantallas CICS, etcétera. La única forma de guardar los objetos transitorios es almacenar la información sobreellos, como cuando se guardan los datos Web en una cookie.Cada vez que un objeto cambia de estado, algunos de los atributos cambian sus valores. Además, cada vezque cambian los atributos de un objeto, debe haber un método para cambiar esos atributos. Cada uno de los mé-todos necesitaría una pantalla o formulario Web para agregar o modificar los atributos. Éstos se convierten enlos objetos de interfaz. Comúnmente la pantalla o formulario Web contiene más controles (o campos) que losatributos que cambian. Por lo general tienen claves primarias, información de identificación (como un nombre odirección) y otros atributos necesarios para una buena interfaz de usuario. La excepción es un evento temporal,que puede usar tablas de la base de datos o una cola para contener la información.Ejemplo de una transición de estadoVeamos el ejemplo de un estudiante que se inscribe en una universidad y los diversos estados por los que pasaría.A continuación le mostramos una lista detallada de tres de esos estados:Los otros estados son Estudiante Programa, Estudiante Actual, Estudiante Continuo y Estudiante Gra-duado. A cada estado hay que asociar un evento, métodos, atributos modificados y una interfaz de usuario. Po-demos usar esta serie de estados para determinar los atributos y métodos que forman parte de la clase.Los estados y eventos que desencadenan los cambios se pueden representar en un diagrama de estados (o enun diagrama de transiciones de estado). En la figura 10.22 se muestra el diagrama de estados para Estudiante.Estado: Estudiante potencialEvento: Aplicación enviadaMétodo: new()Atributos modificados: NumeroNombreDireccionInterfaz de usuario: Formulario Web Solicitud deestudianteEstado: Estudiante AceptadoEvento: Requerimientos cumplidosMétodo: aceptarEstudiante()Atributos modificados: Fecha de admisiónEstado del estudianteDevolver carta de aceptaciónInterfaz de usuario: Pantalla Aceptar estudianteEstado: Dormitorio Asignado EstudianteEvento: Dormitorio seleccionadoMétodo: asignarDormitorio()Atributos modificados: Nombre del dormitorioCuarto del dormitorioPlan de comidasInterfaz de usuario: Pantalla Asignar dormitorio aestudiantewww.xlibros.com
CAPÍTULO 10 • ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 311Los estados se representan mediante rectángulos y los eventos o actividades son las flechas que enlazan los es-tados y hacen que un estado cambie a otro estado. Los eventos de transición se nombran en pasado, porque yaocurrieron para crear la transición.No hay que crear diagramas de estados para todas las clases. Se crean cuando:1. Una clase tiene un ciclo de vida complejo.2. Una instancia de una clase puede actualizar sus atributos en varias formas durante el ciclo de vida.3. Una clase tiene un ciclo de vida operacional.4. Dos clases dependen una de la otra.5. El comportamiento actual del objeto depende de lo que ocurrió antes.Al examinar un diagrama de estados, aproveche la oportunidad para buscar errores y excepciones. Inspec-cione el diagrama para detectar si los eventos ocurren en un tiempo inadecuado. Verifique también que se hayanrepresentado todos los eventos y estados. En los diagramas de estados sólo hay que evitar dos problemas: verifi-que que no entren todas las transiciones en un estado o que salgan todas de éste.Cada estado debe tener por lo menos una transición de entrada y de salida. Algunos diagramas de es-tados usan los mismos símbolos de inicio y terminación que los que utiliza un diagrama de actividad: uncírculo relleno para representar el inicio y círculos concéntricos con el centro relleno para indicar el fin deldiagrama.PAQUETES Y OTROS ARTEFACTOS DE UMLLos paquetes son contenedores para otras cosas de UML, como los casos de uso o las clases. Los paquetes pue-den mostrar el particionamiento del sistema, para indicar qué clases o casos de uso se agrupan en un subsistema,a lo cual se le denomina paquetes lógicos. También pueden ser paquetes componentes, que contienen componen-EstudiantePotencialEstudianteAceptadose enviósolicitudse cumplieronlos requerimientosse seleccionóel dormitoriose inscribió elestudiante en laclaseDormitorioAsignadoEstudiantese seleccionóel programaEstudianteProgramase completaron losrequerimientos degraduaciónEstudianteActualse completó elcurso conéxitoel estudiantese inscribióen la clasese graduóel estudianteEstudianteGraduadoEstudianteContinuoFIGURA 10.22Un diagrama de estados donde semuestra cómo un estudianteprogresa de estudiante potencial aestudiante graduado.www.xlibros.com
312 PARTE III • EL PROCESO DE ANÁLISIStes físicos del sistema, o paquetes de casos de uso que contienen un grupo de casos de uso. Los paquetes usan unsímbolo de carpeta con el nombre del paquete en la ficha de la carpeta o centrado en la misma. El empaqueta-miento puede ocurrir durante el análisis del sistema o en una etapa posterior de diseño del sistema. Los paquetestambién pueden tener relaciones de manera similar a los diagramas de clases, que pueden incluir asociaciones yherencia.La figura 10.23 es un ejemplo de un diagrama de paquetes de casos de uso. Muestra que cuatro casos de uso,Agregar estudiante, Inscribirse en clase, Transferir créditos y Ver información de estudiante son parte delpaquete Estudiante. Hay tres casos de uso, Agregar docente, Ver información de docente y Asignar docentea curso que forman parte del paquete Docente.A medida que continúe construyendo diagramas le será conveniente utilizar los diagramas de componentes,los diagramas de despliegue y las cosas de anotaciones. Éstos permiten distinta perspectivas sobre el trabajo arealizar.El diagrama de componentes es similar a un diagrama de clases, sólo que es más como una vista superficialde la arquitectura del sistema. El diagrama de componentes muestra los componentes del sistema, como un ar-chivo de clase, un paquete, las bibliotecas compartidas, una base de datos, etcétera, y la forma en que se relacio-nan entre sí. Los componentes individuales en un diagrama de componentes se consideran con más detalle dentrode otros diagramas de UML, como los diagramas de clases y los diagramas de casos de uso.El diagrama de despliegue ilustra la implementación física del sistema, incluyendo el hardware, las relacio-nes entre el hardware y el sistema en el que se va a desplegar. El diagrama de despliegue puede mostrar los ser-vidores, estaciones de trabajo, impresoras, etcétera.Las cosas de anotaciones proveen a los desarrolladores más información sobre el sistema. Estas cosas con-sisten en notas que se pueden unir a cualquier cosa en UML: objetos, comportamientos, relaciones, diagramaso cualquier cosa que requiera descripciones detalladas, suposiciones o cualquier información relevante para eldiseño y la funcionalidad del sistema. El éxito del UML depende de la documentación completa y precisa denuestro modelo del sistema para proveer toda la información que sea posible al equipo de desarrollo. Las notasproveen una fuente de conocimiento y comprensión común sobre su sistema para ayudar a que sus desarrollado-res estén coordinados. Las notas se muestran como un símbolo de un papel con una esquina doblada y una líneaque las conecta con el área que necesita más detalles.DepartamentoMiembro del cuerpodocenteEstudianteOficina financieraRegistroEstudianteAdministraciónVer informaciónde docenteAgregarestudianteTransferircréditosInscribirseen claseVer informaciónde estudianteAgregardocenteAsignar docentea cursoEstudianteDocenteFIGURA 10.23Los casos de uso se puedenagrupar en paquetes.www.xlibros.com
CAPÍTULO 10 • ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 313PONGA EL UML A TRABAJAREl UML provee un útil conjunto de herramientas para el análisis y diseño de sistemas. Al igual que con cual-quier producto creado con la ayuda de herramientas, el valor de los entregables de UML en un proyecto de-pende de la experiencia con la que el analista de sistemas maneje las herramientas. En un principio el analistausará el conjunto de herramientas de UML para descomponer los requerimientos del sistema en un modelo deO P O R T U N I D A D D E C O N S U L T O R Í A 1 0 . 3Desarrollo de un sistema fino cuyo plazo de entregase venció hace mucho: uso del análisis orientado a objetospara el Sistema de la biblioteca pública Ruminski*M ientras Dewey Dezmal entra a la sala de lectura de techosaltos y paneles de madera de la Biblioteca Pública Ruminski, unajoven sentada en una larga mesa de roble asoma su cabeza porencima de un monitor, lo ve y al pararse dice: “Bienvenido, soyPeri Otticle, directora de la biblioteca. Entiendo que está ustedaquí para ayudarnos a desarrollar nuestro nuevo sistema de infor-mación”.Intimidado aún por la belleza del antiguo edificio de la biblio-teca y la yuxtaposición de tanta tecnología y tanta historia, Deweyse presenta como analista de sistemas con una pequeña empresa deconsultoría de TI, People and Objects, Inc.“Es la primera vez que me asignan a este tipo de proyecto,aunque en realidad es interesante para mí, ya que me gradué de laInformation Studies School en la Upstate University. Hay especia-lizaciones en ciencias bibliotecarias o TI, por lo que muchos de miscompañeros entraron a trabajar en bibliotecas públicas; yo opté porel grado de TI”.“Entonces vamos a trabajar bien juntos”, dice Peri. “Vamos ami oficina para no molestar a los usuarios y poder enseñarte un in-forme que escribí”.Al pasar por la bella escalera en espiral, al parecer esculpidaen madera, Peri observa que Dewey ve los alrededores y dice: “Talvez te preguntes sobre la magnificencia del edificio, ya que somosuna institución pública. Somos afortunados. Nuestro benefactor esValerian Ruminski. De hecho, ha donado tanto dinero a tantas bi-bliotecas que el personal lo llama afectuosamente “Valerian el Bi-bliotecario”.Después de pasar varios usuarios, Peri continúa: “Como pue-des ver, es un lugar muy concurrido. Y sin importar nuestro antiguoentorno, no estamos detenidos en el pasado”.Dewey lee el reporte que le entrega Peri. Una sección extensase titula “Resumen de los principales requerimientos de los usua-rios” y la lista en viñetas dice: Un usuario de la biblioteca que esté registrado en el sistemapuede sacar libros y revistas del sistema. El sistema de la biblioteca debe revisar en forma periódica(por lo menos una vez a la semana) si se venció la fecha deentrega de un ejemplar de un libro o publicaciónespecializada que un usuario haya sacado. De ser así seenviará un aviso al usuario. Un usuario puede reservar un libro o publicaciónespecializada que se encuentre prestada o que esté en procesode compra. La reservación se cancelará cuando el usuariosaque el libro o publicación especializada, o por medio de unservicio de cancelación formal.Al tiempo que deja de ver el informe, Dewey dice a Peri: “Estoyempezando a entender los requerimientos del usuario. Veo muchassimilitudes entre mi antigua biblioteca universitaria y ésta. Pero eltema que no vi que cubrieras fue el de cómo decidir qué es lo que labiblioteca debe recolectar y qué es lo que debe desechar”.Peri sonríe y contesta: “Es una pregunta intuitiva. El personal dela biblioteca maneja la compra de nuevos libros y publicaciones es-pecializadas para la biblioteca. Si algo es popular se compran más dedos copias. Podemos crear, actualizar y eliminar información sobrelos títulos y copias de los libros y publicaciones especializadas, usua-rios, préstamo de materiales y reservaciones en el sistema”.Dewey deja de ver su libreta de anotaciones y dice: “Aún estoyun poco confundido. ¿Cuál es la diferencia entre los términos títuloy ejemplar?”.Peri responde: “La biblioteca puede tener varios ejemplares deun título. El título por lo general se refiere al nombre de un libro opublicación especializada. Son los ejemplares de un libro los que sesacan de la biblioteca”.Con base en la entrevista de Dewey con Peri y la descripciónde requerimientos en su informe, así como en su propia experienciacon el uso de los servicios de bibliotecas, use UML para respondera las siguientes preguntas (Nota: Es importante que se asegure deque sus soluciones sean lógicas y funcionales; establezca sus supo-siciones con claridad siempre que sea necesario):1. Dibuje un diagrama de casos de uso para representar a losactores y los casos de uso en el sistema.2. Describa los pasos para cada caso de uso (como hicimos paraorganizar los casos de uso).3. Describa escenarios para los pasos. En otras palabras, cree unusuario y escriba un ejemplo del usuario a medida querecorre cada paso.4. Desarrolle una lista de cosas.5. Cree diagramas de secuencia para los casos de uso con baseen los pasos y escenarios.6. Complete el diagrama de clases; determine las relacionesentre las clases y defina los atributos y métodos de cadaclase. Use la cosa de agrupamiento llamada paquete parasimplificar el diagrama de clases.* Basado en un problema escrito por el Dr. Wayne Huang.www.xlibros.com
314 PARTE III • EL PROCESO DE ANÁLISIScasos de uso y en un modelo de objetos. El modelo de casos de uso describe los casos de uso y los actores. Elmodelo de objetos describe los objetos y sus asociaciones, además de las responsabilidades, colaboradores yatributos de los objetos.1. Defina el modelo de casos de uso.Busque los actores en el dominio del problema; revise los requerimientos del sistema y entreviste algunosexpertos de negocios.Identifique los eventos principales iniciados por los actores y desarrolle un conjunto de casos de usoprimarios en un nivel muy alto, que describan los eventos desde la perspectiva de cada actor.Desarrolle los diagramas de casos de uso para comprender cómo se relacionan los actores con los casosde uso que definirán el sistema.Refine los casos de uso primarios para desarrollar una descripción detallada de la funcionalidad delsistema para cada caso de uso primario. Provea detalles adicionales al desarrollar los escenarios de casosde uso que documenten los flujos alternos de los casos de uso primarios.Revise los escenarios de casos de uso con los expertos del área de negocios para verificar los procesos einteracciones. Haga las modificaciones necesarias hasta que los expertos del área de negocios estén deacuerdo en que los escenarios de los casos de uso son completos y precisos.2. Continúe con la creación de diagramas de UML para modelar el sistema durante la fase de análisis desistemas.Derive los diagramas de actividad a partir de los diagramas de casos de uso.Desarrolle los diagramas de secuencia y de comunicación a partir de los escenarios de los casos de uso.Revise los diagramas de secuencia con los expertos del área de negocios para verificar los procesos y lasinteracciones. Haga las modificaciones necesarias hasta que los expertos del área de negocios estén deacuerdo en que los diagramas de secuencia son completos y precisos. Con frecuencia, la revisiónadicional de los diagramas de secuencia gráficos provee a los expertos del área de negocios laoportunidad de reconsiderar y refinar los procesos con un detalle más atómico que la revisión de losescenarios de los casos de uso.3. Desarrolle los diagramas de clases.Busque los sustantivos en los casos de uso y haga una lista. Son objetos potenciales. Una vez queidentifique los objetos, busque similitudes y diferencias en los objetos debido a sus estados ocomportamiento y después cree las clases.Defina las principales relaciones entre las clases. Busque las relaciones “tiene un” y “es un” entre lasclases.Examine los diagramas de casos de uso y de secuencias para poder determinar las clases.Empezando con los casos de uso que son los más importantes para el diseño del sistema, cree losdiagramas de clases que muestren las clases y relaciones que existen en los casos de uso. Un diagrama declases puede representar a las clases y relaciones descritas en varios casos de uso relacionados.4. Dibuje diagramas de estados.Desarrolle diagramas de estados para ciertos diagramas de clase, de manera que pueda proveer un análisismás detallado del sistema en este punto. Use los diagramas de estados como ayuda para comprender losprocesos complejos que no se puedan derivar por completo de los diagramas de secuencia.Determine los métodos al examinar los diagramas de estados. Derive los atributos de las clases de losestados (datos) a partir de los casos de uso, expertos de las áreas de negocios y métodos de las clases.Indique si los métodos y atributos de la clase son públicos (acceso externo) o privados (acceso internopara la clase). Los diagramas de estados son en extremo útiles para modificar los diagramas de clases.5. Empiece el diseño de sistemas; refine los diagramas de UML y utilícelos para derivar las clases y susatributos y métodos.Revise todos los diagramas de UML existentes para el sistema. Escriba especificaciones de clases paracada clase que incluyan los atributos, métodos y descripciones de la clase. Revise los diagramas desecuencia para identificar otros métodos de clases.Desarrolle especificaciones de métodos que muestren con detalle los requerimientos de entrada y desalida para el método, junto con una descripción detallada del procesamiento interno del método.Cree otro conjunto de diagramas de secuencia (si es necesario) para reflejar los métodos reales de lasclases, además las interacciones entre las clases y las interfaces del sistema.Cree diagramas de clases mediante los símbolos de clase especializados para la clase de límite o deinterfaz, la clase de entidad y la clase de control.Analice los diagramas de clases para derivar los componentes del sistema; es decir, clases relacionadas enfunción y lógica que se compilarán y desplegarán en conjunto como un archivo .DLL, .COM, un objeto,un Java Bean, un paquete, etcétera.www.xlibros.com
CAPÍTULO 10 • ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 315Desarrolle diagramas de despliegue para indicar cómo se desplegarán los componentes de su sistema enel entorno de producción.6. Documente el diseño de su sistema en forma detallada. Este paso es imprescindible. Entre más completa seala información que provea al equipo de desarrollo por medio de la documentación y los diagramas de UML,más rápido será el desarrollo y más sólido será el sistema de producción final.LA IMPORTANCIA DE USAR UML PARA EL MODELADOEl UML es una potente herramienta que puede mejorar en forma considerable la calidad de su análisis y diseñode sistemas, y se espera que las prácticas mejoradas se traduzcan en sistemas de mayor calidad.Al usar el UML en forma iterativa en el análisis y el diseño podemos lograr una mejor comprensión entreel equipo de negocios y el equipo de TI en relación con los requerimientos del sistema y los procesos que debenocurrir en el sistema para cumplir con esos requerimientos.La primera iteración del análisis debe realizarse a un nivel muy alto para identificar los objetivos del sistemaen general y validar los requerimientos a través del análisis de casos de uso. Identificar los actores y definir elmodelo de casos de uso inicial son actividades que forman parte de esta primera iteración. Las iteraciones subsi-guientes del análisis refinan más los requerimientos del sistema por medio del desarrollo de escenarios de casosde uso, diagramas de clases, diagramas de secuencia, diagramas de estado, etcétera. Cada iteración requiere unavista cada vez más detallada del diseño del sistema, hasta que las cosas y relaciones en el sistema se definan conclaridad y precisión en los documentos de UML.O P O R T U N I D A D D E C O N S U L T O R Í A 1 0 . 4C-Shore“!Ellos quieren que el núcleo de la interfaz de usuario de losrepresentantes de servicio al cliente se vuelva a programar porcompleto!” exclama Bradley Vargo, director de desarrollo de siste-mas de información en C-Shore Mutual Funds. “Hace tan sólo ochomeses completamos un proyecto de desarrollo de dos años del Sis-tema de representantes de servicio al cliente, CSR. Durante todo elproyecto soportamos un desfile de requerimientos cambiantes.Cada mes, los del departamento de marketing inventaban algunacaracterística nueva y competitiva de servicio al cliente y, en unasemana, el grupo de CSR estaba aquí con grandes cambios en lasespecificaciones del sistema CSR. ¡Pensé que nunca terminaríamosese proyecto! Ahora parece que tendremos que empezar un nuevoproyecto de reprogramación en un sistema que tiene menos de unaño. ¡Pronosticamos una vida de 7 años para este sistema! Creo queahora inicia la etapa de la eterna reconstrucción”.Bradley habla con Rachael Ciupek, la analista de sistemas deaplicación en jefe responsable del sistema CSR y con Bridget Ciu-pek, su hermana y la programadora que escribió la mayor parte dela interfaz de usuario. “Cálmate, Bradley”, dice Rachael. “No esculpa de los niños de marketing o de CSR. La naturaleza de nuestronegocio se ha visto afectada por la competencia a ritmo veloz. Mar-keting no inventa estos cambios para salir del aburrimiento. A me-nudo responden a los nuevos servicios para el cliente basados encomputadora que ofrece nuestra competencia. Tenemos que perma-necer en la punta o por lo menos seguirles el ritmo, ¡de lo contrarioestaremos buscando nuevos empleos!”.“Bradley, Rachael, creo que ustedes saben mejor que nadie quela situación puede ser peor de lo que creen”, interviene Bridget. “Detodas formas los programadores han estado realizando pequeñasmodificaciones en la interfaz de usuario durante los últimos ochomeses. Los usuarios de CSR han estado hablando con nosotros di-rectamente para suplicar ayuda. Por lo general sólo quieren un pe-queño cambio en una parte aislada del sistema, pero esto ha creadouna carga de trabajo adicional debido a que tenemos que volver acertificar todo el sistema. Ustedes saben cómo los efectos de unapequeña modificación se pueden propagar a través de un programaextenso. Hemos facturado el tiempo para el mantenimiento delprograma basándonos en el supuesto de que sólo estábamos ha-ciendo pequeños ajustes al sistema completo. Aunque los cambioshan sido graduales, en ocho meses hemos vuelto a escribir aproxi-madamente una cuarta parte del código de la interfaz de usuario deCSR. El trabajo no ha decaído. Es bastante estable aún”.“Entonces lo que me quieres decir”, dice Bradley, “es que te-nemos necesidades del sistema en esta área que han estado cam-biando en forma constante mientras tratábamos de escribir lasespecificaciones, escribir el código del programa y crear un trabajocon soluciones fijas contra un problema fluido. ¿Cómo podemosescribir programas si durarán sólo unos cuantos meses sin que re-quieran de un costoso mantenimiento?”.¿Cómo puede Bradley administrar un proceso de desarrollo desistemas que ya no tenga procesos de negocios fijos o constantescomo parte de su conjunto de objetivos? ¿Hay una forma en queRachael administre los costos de mantenimiento de control y de lasespecificaciones cuando se pide constantemente a los programado-res que modifiquen partes aisladas de un programa extenso? Tengaen cuenta que un objetivo importante es proveer un buen soportepara las necesidades de los usuarios y las estrategias de negocios dela organización.www.xlibros.com
316 PARTE III • EL PROCESO DE ANÁLISISCuando esté completo su proceso de análisis y diseño, deberá tener un conjunto preciso y detallado de es-pecificaciones para clases, escenarios, actividades y secuencias en el sistema. En general, podemos relacionar laminuciosidad del análisis y diseño de un sistema con la cantidad de tiempo requerido para desarrollar el sistemay la calidad resultante del producto entregado.Lo que se pasa por alto con frecuencia en el desarrollo de un nuevo sistema es que entre más progrese unproyecto, más costosas serán las modificaciones en los requerimientos de negocios de un sistema. Es muchomás fácil, rápido y mucho menos costoso modificar el diseño de un sistema mediante el uso de una herramientaCASE, o incluso en papel, durante las fases de análisis y diseño de un proyecto, que hacerlo durante la fase dedesarrollo.Por desgracia algunos empleadores tienen poca visión y creen que sólo cuando un programador o analistaestá codificando es cuando realmente está trabajando. Algunos empleadores asumen equivocadamente que laproductividad del programador se puede juzgar tan sólo con base en la cantidad de código producido, sin recono-cer que la creación de diagramas ahorra en última instancia tiempo y dinero que de otra manera se desperdiciaríasi se hiciera un prototipo del proyecto sin una planificación apropiada.En esta situación se adapta muy bien la analogía para la construcción de una casa. Aunque contratamos unconstructor para ello, no vamos a querer vivir en una estructura construida sin planeación, una en la que los cuar-tos y características se agreguen al azar sin relación con la función o con el costo. Queremos que un constructorconstruya el diseño que acordamos a partir de los planos de construcción, con las especificaciones que revisaroncon cuidado todas las partes involucradas. Como un miembro de un equipo de análisis dijo con tanta certeza:“Poner un proyecto en papel antes de codificarlo reducirá su costo a la larga. Es mucho más económico borrar undiagrama que modificar la codificación”.Cuando cambian los requerimientos de negocios durante la fase de análisis, a veces es necesario volver adibujar algunos diagramas de UML. Pero si los requerimientos de negocios cambian durante la fase de desarro-llo, tal vez se requiera una cantidad considerable de tiempo y dinero para rediseñar, recodificar y reevaluar elsistema. Al confirmar su análisis y diseño en papel (en especial mediante el uso de diagramas de UML) con losusuarios que son expertos en el área de negocios, usted ayudará a asegurar que se cumpla con los requerimientosde negocios correctos cuando el sistema esté completo.RESUMENLos sistemas orientados a objetos describen las entidades comoobjetos. Los objetos forman parte de un concepto general co-nocido como clases, la unidad principal de análisis en el análi-sis y diseño orientados a objetos. Cuando se introdujo porprimera vez la metodología orientada a objetos, los defensorescitaron la reutilización de los objetos como el principal benefi-cio de su metodología. Aunque la reutilización es el principalobjetivo, también es muy importante el mantenimiento de lossistemas.Los analistas pueden usar tarjetas CRC para empezar elproceso de modelado de objetos de una manera informal. Sepuede agregar el Pensamiento en objetos a las tarjetas CRC paraayudar al analista a refinar las responsabilidades en tareas cadavez más pequeñas. Se pueden realizar sesiones CRC con ungrupo de analistas para determinar las clases y responsabilidadesen forma interactiva.El lenguaje unificado de modelado (UML) provee un con-junto estandarizado de herramientas para documentar el análi-sis y diseño de un sistema de software. El UML se basafundamentalmente en una técnica orientada a objetos conocidacomo modelado de casos. Un modelo de casos de uso describequé hace el sistema sin describir cómo lo hace. Un modelo decasos de uso particiona la funcionalidad del sistema en com-portamientos (llamados casos de uso) que son importantes paralos usuarios del sistema (llamados actores). Se crean distintosescenarios para cada conjunto diferente de condiciones de uncaso de uso.Los principales componentes del UML son cosas, relacio-nes y diagramas. Los diagramas están relacionados entre sí. Lascosas estructurales son más comunes; incluyen clases, interfa-ces, casos de uso y muchos otros elementos que proveen la formade crear modelos. Las cosas estructurales permiten al usuariodescribir relaciones. Las cosas de comportamiento describen laforma en que trabajan las cosas. Las cosas de agrupamiento seutilizan para definir límites. Las cosas de anotaciones permitenal analista agregar notas a los diagramas.Las relaciones son el pegamento que mantiene todo unido.Las relaciones estructurales se utilizan para enlazar las cosas enlos diagramas estructurales. Las relaciones estructurales inclu-yen dependencias, agregaciones, asociaciones y generalizacio-nes. Los diagramas de comportamiento utilizan los cuatro tiposbásicos de relaciones de comportamiento: comunica, incluye,extiende y generaliza.El conjunto de herramientas de UML está compuesto dediagramas de UML. Aquí se incluyen los diagramas de casos de uso,diagramas de actividad, diagramas de secuencia, diagramas decomunicación, diagramas de clases y diagramas de estados.Además de los diagramas, los analistas pueden describir un casode uso mediante un escenario de casos de uso.Mediante el uso de UML de manera iterativa en el análisisy el diseño podemos lograr una mejor comprensión entre elequipo de negocios y el equipo de TI en relación con los reque-rimientos del sistema y los procesos que necesitan ocurrir en elsistema para cumplir con esos requerimientos.www.xlibros.com
CAPÍTULO 10 • ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 317E X P E R I E N C I A D E H Y P E R C A S E ® 1 0“Espero que aún se sienta como si estuviera aprendiendo nue-vas cosas sobre MRE. Entiendo que ha estado hablando con algunasde las personas de sistemas: Melissa, Todd, Roger (e incluso conLewis, nuestro nuevo interno) acerca de usar algunos métodos dis-tintos para crear diagramas y comprendernos mejor. Espero que nosvea como una familia y no sólo como una colección de personas.Sin duda todos nos sentimos como si hubiéramos ‘heredado’ unagran sabiduría de Jimmy Hyatt y del padre de Warren. Estoy com-pletamente de acuerdo en usar su nueva metodología, si nos ayudaa mejorar los informes de nuestros proyectos. Desde luego queSnowden está ansioso de ver su trabajo orientado a objetos. ¿Podríapresentarle algo en su escritorio en un par de semanas?”.Preguntas de HYPERCASE1. Cree un diagrama de actividad para el caso de uso Progresodel proyecto de informes (Report Project Progress). Consultelas especificaciones del caso de uso en la oficina de MelissaSmith para ver los detalles y un prototipo.2. Cree un diagrama de actividad para el caso de uso Agregarcliente (Add Client). Consulte las especificaciones del casode uso en la oficina de Melissa Smith para ver los detalles yun prototipo que encontrará en la oficina de Todd Taylor.3. Cree un diagrama de secuencia para la ruta principal del casode uso Progreso del proyecto de informes. Consulte lasespecificaciones del caso de uso en la oficina de MelissaSmith para ver los detalles y un prototipo.4. Cree un diagrama de secuencia para la ruta principal del casode uso Agregar cliente. Consulte las especificaciones delcaso de uso en la oficina de Melissa Smith para ver los detallesy un prototipo que encontrará en la oficina de Todd Taylor.5. Cree un diagrama de estados para la clase Asignación(Assignment). Se crean asignaciones para las tareas, seseleccionan los recursos, se actualizan las horas y seterminan las asignaciones.6. Cree un diagrama de estados para la clase Tarea (Task). Lastareas se crean, pero no se inician; se planean, algunas vecesse retienen, se trabaja en ellas actualmente y se completan.FIGURA 10.HC1Encontrará los diagramas desecuencia en HyperCase.PALABRAS CLAVE Y FRASESactoragregaciónAjaxasociaciónbarra de sincronizaciónbifurcacióncarrilcaso de uso primarioclaseclase abstractaclase de controlclase de entidadclase de límitecolaboraciónwww.xlibros.com
318 PARTE III • EL PROCESO DE ANÁLISIScosa de anotacióndependenciasdiagrama de actividaddiagrama de casos de usodiagrama de clasesdiagrama de comunicacióndiagrama de desplieguediagrama de estadosdiagrama de secuenciaescenario de casos de usoestadoestructura todo/parteeventoevento temporalfusióngeneralización/especialización (gen/spec)herencialenguaje unificado de modelado (UML)mensajemensaje asíncronomensaje sincrónicoobjetoorientado a objetospaquetepolimorfismoproceso unificadoramificaciónredefinición de métodosrelaciónruta principalsobrecarga de métodostarjetas CRCunirPREGUNTAS DE REPASO1. Liste dos razones de utilizar una metodología orientada a objetos para el desarrollo de sistemas.2. Describa la diferencia entre una clase y un objeto.3. Explique el concepto de herencia en los sistemas orientados a objetos.4. ¿Qué significa CRC?5. Describa lo que agrega el Pensamiento en objetos a la tarjeta CRC.6. ¿Qué es UML?7. ¿Cuáles son los tres elementos principales del UML?8. Haga una lista de lo que incluye el concepto de cosas estructurales.9. Haga una lista de lo que incluye el concepto de cosas de comportamiento.10. ¿Cuáles son los dos tipos principales de diagramas en UML?11. Haga una lista de los diagramas que se incluyen en los diagramas estructurales.12. Haga una lista de los diagramas que se incluyen en los diagramas de comportamiento.13. ¿Qué es lo que describe un modelo de casos de uso?14. ¿Describiría un modelo de casos de uso como un modelo lógico o físico del sistema? Defienda su respuesta en unpárrafo.15. Defina qué es un actor en un diagrama de casos de uso.16. ¿Cuáles son las tres cosas que un caso de uso siempre debe describir?17. ¿Qué es lo que describe un diagrama de actividad?18. Escriba un párrafo que describa el uso de los carriles en los diagramas de actividad.19. ¿Qué se puede describir en un diagrama de secuencia o de comunicación?20. ¿Por qué definir clases es una tarea tan importante del análisis orientado a objetos?21. ¿Qué se puede mostrar en un diagrama de clases?22. Defina la sobrecarga de métodos.23. Mencione las cuatro categorías en las que se clasifican las clases.24. ¿Cuáles son los pasos para crear un diagrama de secuencia?25. ¿Cuáles son las dos categorías de relaciones entre clases?26. ¿Para qué se utilizan los diagramas de generalización/especialización (gen/spec)?27. ¿Cuál es otro término para el polimorfismo?28. ¿Qué se describe mediante un diagrama de estados?29. ¿Qué es un paquete en la metodología del UML?30. ¿Por qué es importante usar el UML para el modelado?PROBLEMAS1. Cree una serie de tarjetas CRC para la División de catálogos de World’s Trend. Una vez colocado un pedido, el equipode abastecimiento de pedidos se hace cargo y revisa la disponibilidad, abastece el pedido y calcula el monto total delmismo. Use cinco tarjetas CRC, una para cada una de las siguientes clases: pedido, abastecimiento de pedido, inventario,producto y cliente. Complete la sección sobre clases, responsabilidades y colaboradores.2. Termine las tarjetas CRC del problema 1; cree enunciados de Pensamiento en objetos y nombres de propiedades paracada una de las cinco clases.www.xlibros.com
CAPÍTULO 10 • ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 3193. Dibuje un diagrama de casos de uso para la División de catálogos de World’s Trend.4. Dibuje cuatro imágenes que muestren ejemplos de cuatro tipos de relaciones de comportamiento para la agenciaautomotriz BMW de Joel Porter. ¿Qué tipo de relación hay implicada cuando un cliente debe hacer arreglos definanciamiento? ¿Hay actividades comunes involucradas cuando una persona arrenda o compra un automóvil? ¿Qué tipode relación existe entre un empleado que es un gerente o uno que es un vendedor?5. Dibuje un diagrama de comunicación para un estudiante que toma un curso de un maestro que forma parte del cuerpodocente.6. El condado Coleman tiene una central telefónica que se hace cargo de las llamadas entre los que llaman y los quereciben la llamada. Dados estos tres actores, dibuje un diagrama de secuencia simple para realizar una simple llamadatelefónica.7. Usted está listo para empezar el modelado de UML para la clínica Kirt. Dibuje un diagrama de clases que incluya a unmédico, un paciente, una cita y la factura de un paciente. No involucre a la compañía de seguros.8. Use UML para dibujar ejemplos de las cuatro relaciones estructurales para la clínica Kint.9. Escriba un escenario de caso de uso de ejemplo para un paciente que ve a un médico en la clínica Kint.10. El Woody’s Supermarket, una pequeña cadena de tiendas de abarrotes, está construyendo un sitio Web para permitir alos clientes realizar pedidos de abarrotes y otros artículos. El cliente coloca un pedido Web, se actualiza el archivomaestro de clientes y se crea un registro de pedido. El pedido se imprime en una tienda local y los empleados de latienda recogen los artículos de los estantes. Los clientes reciben una notificación vía correo electrónico de que su pedidoestá listo. Cuando recogen el pedido, se agregan los artículos congelados, productos helados y demás artículosrelacionados. Dibuje un diagrama de actividad que muestre cómo el cliente coloca su pedido mediante el sitio Web,cómo se verifica el pedido, cómo se confirma, como se envían los detalles relacionados a la tienda local y cómo se envíaun mensaje de correo electrónico al cliente.11. Sludge’s Auto (consulte el capítulo 12) es un centro de reciclaje de auto partes que utiliza Ajax en sus sitios Web paraque sus clientes naveguen en busca de partes. Ajax permite al sitio Web obtener datos del servidor mientras el usuariopermanece en la página Web original. El cliente necesita conocer la marca, modelo y año de un auto así como la pieza.Si la pieza está en existencia, aparecen la descripción, condición de la pieza, precio y costo de envío, junto con lacantidad disponible para cada condición de la pieza y una imagen de la misma. Dibuje un diagrama de secuencia queutilice clases de límite, control y entidad para la Consulta de auto partes de Sludge’s Auto.12. Musixscore.com es un servicio en línea que provee partituras musicales a sus clientes. En la página Web “explorarmúsica” los clientes seleccionan un género de música de una lista desplegable. La página Web utiliza Ajax para obteneruna lista de artistas, músicos o grupos que coincidan con el género, lo cual se muestra en un formato de listadesplegable. Al hacer una selección de la lista desplegable del artista, la página Web utiliza Ajax para mostrar unatercera lista desplegable con todos los CD o demás obras del artista. Cuando se selecciona un CD, la página Web utilizaAjax para obtener todas las canciones del CD en una cuarta lista desplegable. El espectador puede hacer seleccionesmúltiples. Al hacer clic en la imagen Agregar al carrito de compras las canciones se agregan al carrito de compras. Elespectador puede cambiar cualquiera de las listas desplegables para seleccionar partituras musicales adicionales y serepite el proceso.a. Escriba una descripción para el caso de uso Explorar partitura musical que represente esta actividad.b. Dibuje un diagrama de secuencia que utilice clases de límite, control y entidad para la página Web de Musixscore.c. Escriba una lista de los mensajes, nombres y parámetros, junto con los tipos de datos que se pasarían a las clases ylos valores (con los tipos de datos) que se incluyen con el mensaje de retorno. Haga todas las suposicionesnecesarias sobre los datos.d. Cree un diagrama de clases para las clases de entidad utilizadas en el diagrama de secuencia.BIBLIOGRAFÍA SELECCIONADABeck, K. y W. Cunningham. “Laboratory for Teaching Object-Oriented Thinking”, OOPSLA’89, según lo citado en D. Butler,CRC Card Session Tutorial. www.csc.calpoly.edu/~dbutler/tutorials/winter96/crc_b/tutorial.html. Último acceso en 29 dejulio de 2009.Bellin, D. y S. Suchman Simone. The CRC Card Book. Indianápolis: Addison-Wesley Professional, 1997.Booch, G., I. Jacobson y J. Rumbaugh. The Unified Modeling Language User Guide, 2ª. Edición. Indianápolis: Addison-Wesley Professional, 2005.Cockburn, A. Writing Effective Use Cases. Boston: Addison-Wesley Publishing Co., 2001.Dobing, B. y J. Parsons. “How UML Is Used”. Communications of the ACM, Vol. 49, Núm. 5, mayo de 2006, pp. 109-113.Fowler, M. UML Distilled: A Brief Guide to the Standard Object Modeling Language, 3ª. Edición. Indianápolis: Addison-Wesley Professional, 2003.Kulak, D. y E. Guiney. Use Cases: Requirements in Context, 2ª. Edición. Indianápolis: Addison-Wesley Professional, 2004.Miles, R. y K. Hamilton. Learning UML 2.0. Indianápolis: O’Reilly Media, Inc., 2006.Sahraoudi, A. E. K. y T. Blum. “Using Object-Oriented Methods in a System Lifecycle Process Model”. ACM SIGSOFT Soft-ware Engineering Notes, Vol. 28, Núm. 2 (marzo de 2003).www.xlibros.com
320 PARTE III • EL PROCESO DE ANÁLISISE P I S O D I O 1 0CASO DE LA CPUALLEN SCHMIDT, JULIE E. KENDALL Y KENNETH E. KENDALLObjetos con clase“Los prototipos y diagramas que hemos creado realmente nos ayudaron a entender el proyecto”, sonríe Anna, mirando desdesu computadora. “Tengo una buena sensación sobre lo que estamos haciendo”.“Igual yo”, contesta Chip. “Pero necesitamos trabajar en las páginas Web que serán utilizadas por un amplia variedad dedocentes y miembros del personal”.“¿Por dónde quieres empezar?”, pregunta Anna. “¿Crees que deberíamos trabajar en el diagrama de clases?”.Chip se reclina en su silla y piensa en voz alta. “No, necesitamos realizar otro modelado para determinar las clases, atri-butos y métodos primero. Tenemos un diagrama E-R preliminar como punto inicial para las clases de entidad. Deberíamosmodelar el comportamiento de varios prototipos. Al examinar un prototipo, deberíamos hacer preguntas sobre cada campo. Sila información se almacena en una tabla de base de datos, deberíamos obtenerla de alguna forma”.“Sí, por lo general la incluiríamos en una lista desplegable”, reflexiona Anna.“Bueno, no necesariamente”, responde Chip. “Si hay demasiadas entradas o si una lista depende de una acciónprevia, deberíamos usar Ajax para recuperar la información y actualizar la página Web, creando listas desplegables ovínculos”.“Los programas de creación para agregar nueva información serán los que requieran más tecleo, pero los programas paracambiar, eliminar y consultar dependen de los datos almacenados”, agrega Anna. “¿Por dónde deberíamos empezar?”.“He estado pensando mucho en el prototipo que creamos para usar la Web para actualizar la imagen de todo el softwareque se almacena en una máquina del laboratorio de computación”, dice Chip, inclinándose hacia delante en su silla. “Y con salade laboratorio me refiero a cualquier salón de clases o laboratorio que tenga el mismo conjunto de software en cada computa-dora. La imagen de software se utiliza para refrescar las computadoras dañadas o para reemplazar el software en una máquinainfectada por un virus o cualquier otro problema”.“Bueno, demos un vistazo a ese prototipo ACTUALIZAR IMAGEN DE LABORATORIO”, dice Anna.Chip muestra el prototipo (consulte el caso de la CPU del capítulo 6). “Necesitamos conocer el número de cuarto y decampus para buscar la imagen de software”, dice Chip mientras apunta al primer par de campos en la página Web. “Estos nú-meros se almacenan en tablas de la base de datos”.“Sí, pero se almacenan con el software de programación administrativa en la mainframe”, interviene Anna. “Podríamoscopiarlos a los servidores Web, pero si cambian los edificios o los cuartos tendremos datos inconsistentes y un sistema pocofiable”.“Ahh, veo lo que quieres decir”, dice Chip. “¡Bien pensado! Tenemos que obtener estos datos de la mainframe”.“Esto requiere el diagrama de actividad ACTUALIZAR IMAGEN DE LABORATORIO (que se muestra en la figuraE10.1)”, comenta Anna. “¿Por qué no creo el diagrama y tu revisas que esté correcto?”.“Suena bien”, comenta Chip.Anna empieza a dibujar el diagrama. “Como sólo ciertos miembros del personal tendrán la autorización para actualizar laimagen del laboratorio, creo que debería empezar con ellos iniciando sesión en el sistema. Si es un inicio de sesión válido, seenviará una solicitud al estado de la mainframe llamada OBTENER SALAS EDIFICIO CAMPUS para obtener los edificiosdel campus y las salas dentro de éstos. Esta lista se envía de vuelta al programa ENVIAR LISTA EDIFICIO CAMPUS en elservidor Web, en donde se convierte en un documento de XML y se envía a la página Web SELECCIONAR EDIFICIO DECAMPUS”.Chip pregunta: “¿Vas a poner todas las salas en la lista para todos los edificios? Eso sería un extenso documento de XMLy podría tardar un tiempo en cargarse en el navegador”.“ La otra opción sería incluir sólo los edificios y después solicitar las salas para un edificio de campus seleccionado”,responde Anna pensativamente. “Eso también sería aceptable, pero alentaría el proceso de seleccionar salas ya que el navegadortendría que esperar que las salas se actualizaran en la lista desplegable. Si se enviara todo el documento de XML a la vez, lalista de salas se actualizaría rápidamente a partir de los elementos del documento a nivel del navegador. Sería muy rápido. Asíel usuario seleccionaría un edificio del campus y sólo aparecerían las salas para ese edificio”.“Tengo una idea”, exclama Chip. “Cuando el programa obtiene las salas de los edificios, ¿hay alguna forma de seleccionarsólo las salas que son laboratorios de computadoras?”.“Es una excelente idea”, dice Anna. “El documento de XML sería más pequeño y se cargaría más rápido en el navegador.Tal vez tengamos que solicitar una modificación de la tabla de la base de datos para tener un código para los laboratorios decomputadora”.“Voy a ver eso”, responde Chip. “Entonces, ¿qué ocurre después de que obtenemos una sala de laboratorio?”.Anna piensa por un momento, “Necesitamos una tabla de imágenes del laboratorio en el servidor Web que contenga elnúmero de sala y el software incluido en ella. Esto incluye el software estándar, como el sistema operativo, procesamiento depalabras y software para escanear virus, ya que pueden cambiar de una sala a otra. Agregaré un estado para OBTENER SOFT-WARE DE COMPUTADORA PARA SALA en el carril Servidor Web”.www.xlibros.com
CAPÍTULO 10 • ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 321Sistema deinicio de sesiónValidar iniciode sesiónSeleccionar edificiodel campusSeleccionar lista deedificios del campusObtener software decomputadora parala salaObtener sala de softwarede computadoraBuscar softwareque coincidaSeleccionar salaSeleccionarnuevo softwareActualizar listade softwareActualizar imágenesde software dellaboratorioSolicitar cambiosen la imagenAcción de página WebAgregar software a imagenNo más nuevo softwareSin cambiosMás softwarePágina Web cliente Servidor Web MainframeNo hay nuevo softwareSe transmitió formularioError de inicio de sesión inválidoValores XML de salasde edificiosEdificio y sala seleccionadosLista de softwareSe enviaron las primeras3 letras del softwareNo se encontró software que coincidaSe encontró software que coincideCambios de softwareActualización exitosaObtener salas de edificios del campusSalas de edificiosFIGURA E10.1Diagrama de actividad ACTUALIZARIMAGEN DE LABORATORIOChip pregunta: “¿Incluimos una lista desplegable para el software?”.“No, eso dificultaría quitar el software o cambiar la versión”, responde Anna pensativamente. “Creo que deberíamos mos-trar el software en una lista en la página Web y permitirles actualizar el número de versión”.“El problema es que tal vez tengamos una lista extensa de software y haya que eliminar parte del software también!”,comenta Chip. “¿Por qué no usamos un modelo de correo electrónico, con una casilla de verificación en frente de cada título desoftware y limitamos el número de títulos de software por página? Podríamos incluir un botón de siguiente página para mostrarel siguiente grupo de títulos de software”.“¿Cómo sabe el programa de eliminación qué paquete de software eliminar?”, pregunta Anna.“Necesitamos incluir el número de software como campo oculto que se transmita al servidor Web”, responde Chip. “¿Quépiensas sobre agregar software a la imagen del laboratorio?”.Anna piensa por unos minutos. “¿Por qué no usamos Ajax de nuevo para hacer que introduzcan las primeras letras del títulode software en un campo de texto de entrada? Podríamos enviar la solicitud a la tabla Software en el servidor Web y devolverwww.xlibros.com
322 PARTE III • EL PROCESO DE ANÁLISISuna lista de los títulos que coincidan. La página Web crearía un bloque rectangular flotante en la parte superior de la página Webcon una lista de los vínculos a los títulos de software y los campos ocultos almacenados con el vínculo. El usuario haría clic enun título para agregarlo a la imagen. Después podría agregar otro título de software si fuera necesario. Ésta es la actividad SE-LECCIONAR NUEVO SOFTWARE que envía las primeras tres letras al estado BUSCAR SOFTWARE QUE COINCIDA delservidor Web. ACTUALIZAR LISTA DE SOFTWARE crea el bloque flotante de títulos”.“¡Excelente idea!”, exclama Chip.“Al terminar de agregar software, revisar el software que se va a quitar y cambiar los números de las versiones, hacen clicen el botón enviar y la tabla de la base de datos de imágenes del laboratorio se actualiza con los cambios”, dice Anna. “Elestado SOLICITAR CAMBIOS EN IMAGEN envía los cambios al estado ACTUALIZAR IMAGEN SOFTWARE LABORA-TORIO”.“Esto es divertido”, sonríe Chip. “Voy a trabajar en un diagrama de secuencia para el prototipo ACTUALIZAR IMAGENLABORATORIO (que se muestra en la figura E10.2). Chip empieza por enviar la solicitud para la página Web Actualizar la-boratorio. El servidor envía el mensaje obtenerCampus() a la clase CAMPUS, la cual devuelve la listaCampus incluyendo uncodigoCampus y una descripcionCampus. El controlador envía un mensaje a la clase SALA DE CAMPUS para obtener salasque contengan software de laboratorio, las cuales se devuelven al CONTROLADOR ACTUALIZAR IMAGEN LABORATO-RIO COMPUTADORAS. La clase controladora crea el documento de XML listaSalas y lo envía al navegador Web, el cual creala lista de selección Edificio de campus. Al cambiar la lista de Edificios del campus, el navegador Web utiliza el mismo docu-mento de XML para cambiar la lista desplegable Número de sala, de manera que sólo incluya las salas de laboratorio en eledificio del campus seleccionado.Cuando se modifica la lista desplegable Número de sala, se envía una solicitud obtenerSoftwareSala() a la clase controla-dora, que a su vez envía un mensaje obtenerSoftwareImagen() a la clase IMAGEN SOFTWARE. Mediante el uso del númerode sala se obtiene el software y se devuelve en la listaSoftware. LA clase controladora utiliza la listaSoftware para crear el XMLque se envía a la clase de interfaz ACTUALIZAR IMAGEN LABORATORIO COMPUTADORAS, que actualiza la páginaWeb con los títulos de software.Cuando se introduce un título parcial de software, se envía una solicitud seleccionarSoftware() al CONTROLADORACTUALIZAR IMAGEN LABORATORIO COMPUTADORAS, el cual envía un mensaje buscarSoftware() a la clase de:Actualizarimagenlaboratoriocomputadoras:Campus :Sala decampus:Imagen desoftware :Softwarecargar Página Webactualizar laboratorioPágina Web actualizarsoftware laboratoriocambiar Lista campusenviarURLPaginaWebenviar Página imagenlaboratorioobtenerSalaCampus()obtenercampus()regresar listaCampusregresar listaSalasregresar listaSoftwareregresar éxitoreturn softwareListbuscarSoftware()obtenerSala()obtenerSoftwareSala() obtenerSoftwareImagen()actualizarImagenSala()actualizar listaSalasactualizar lista desoftwareseleccionarSoftware()regresar titulos-Coincidenciasactualizar imagen()Enviar confirmacióncambiar Lista de salasmostrar software delaboratoriomostrar Nuevo softwareEnviar solicitud deimagenIntroducir Títuloparcial de softwareLista de salasdisponible:Controladoractualizar imagenlaboratoriocomputadorasDocenteFIGURA E10.2Diagrama de secuencia ACTUALIZARIMAGEN DE LABORATORIO.www.xlibros.com
CAPÍTULO 10 • ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 323SoftwareRecibidoSoftwareDesplazadoSoftwareInstaladoSoftwareActualizadoSoftwareEliminadose instaló el softwareen las máquinasse actualizó el softwarese desplazó el softwarea un nuevo equipo se actualizóel softwaresoftwaresin utilizarse recibió softwareFIGURA E10.3Diagrama de estadosSOFTWARE.entidad SOFTWARE. Se busca el software que coincida y se envía la listaSoftware que contiene el número de software,descripción y versión a la clase controladora. Esto da formato al documento de XML, que se envía a la clase de interfazACTUALIZAR IMAGEN LABORATORIO COMPUTADORAS. El navegador Web da formato al bloque flotante de títu-los de software. Al seleccionar un título, el navegador lo agrega a la lista de títulos de software y se quita el bloque flo-tante.Al hacer clic en el botón Enviar solicitud de imagen en la página Web, se envía la solicitud actualizarImagen() al contro-lador, el cual envía un mensaje actualizarImagenSala() a la clase de entidad IMAGEN DE SOFTWARE. La tabla de la base dedatos se actualiza y se devuelve el mensaje de éxito al controlador, que a su vez envía una página Web de confirmación.“El software parece un poco complicado, ya que se reemplazan distintas versiones y paquetes de software por otras dife-rentes”, comenta Anna. “Creo que es buena idea dibujar un diagrama de estados para el software. Esto nos dará una idea de losmétodos y atributos de software, además de la interfaz que necesitaremos para cambiar esos atributos”.Anna empieza a trabajar en un diagrama de estados SOFTWARE. Al recibir por primera vez el software, se introduce enel sistema mediante el formulario AGREGAR SOFTWARE de Microsoft Access y se cambian los valores de los atributosiniciales. Hay que agregar todo el software antes de poder instalarlo en las máquinas, por lo que se difiere el evento SOFTWAREINSTALADO EN LAS MÁQUINAS hasta que se haya agregado.Una vez instalado el software en cualquier cantidad de máquinas, existe en el estado SOFTWARE INSTALADO durantemucho tiempo. Se actualiza la tabla relacional HARDWARE-SOFTWARE para reflejar el estado actual. De vez en cuando sereemplaza una máquina y el software se mueve a una máquina distinta. Se vuelve a actualizar la tabla HARDWARE-SOFT-WARE para reflejar la nueva ubicación. Cuando hay una nueva versión del software disponible, se actualiza con un formularioCAMBIAR SOFTWARE de Microsoft Access. O también se puede eliminar el software del sistema mediante el formulario ELI-MINAR SOFTWARE de Microsoft Access. En la figura E10.3 se muestra el diagrama de estados SOFTWARE completo.Chip y Anna trabajan en varios diagramas de actividad, secuencia y estados. Después de haber completado varios diagra-mas, Chip comenta: “Creo que tenemos suficiente información para crear un diagrama de clases”.Anna concuerda, “Sí, vamos a asignar las relaciones”.En la figura 10.4 se muestra el diagrama de clases SISTEMA COMPUTARIZADO. Cada clase tiene atributos privados ymétodos públicos en Microsoft Access para actualizar los atributos. Las principales clases son Computadora y Software, conuna clase asociativa HardwareSoftware que las conecta. Esta clase se utiliza para implementar la relación de muchos a muchosentre el hardware y el software. Cada paquete de software pertenece a una Categoría de software y también tiene un Experto desoftware a quien se puede llamar para obtener soporte. Cada computadora tiene uno o más sistemas operativos y se localiza enun edificio del campus.www.xlibros.com
324 PARTE III • EL PROCESO DE ANÁLISISEjerciciosE-1. Use Microsoft Visio o Visible Analyst para ver el diagrama de actividad ACTUALIZAR IMAGEN LABORATORIO(UPDATE LAB IMAGE).E-2. Use Microsoft Visio o Visible Analyst para ver el diagrama de secuencia ACTUALIZAR IMAGEN LABORATORIO(UPDATE LAB IMAGE).E-3. Use Microsoft Visio o Visible Analyst para ver el diagrama de estados SOFTWARE.E-4. Use Microsoft Visio o Visible Analyst para ver el diagrama de clases SISTEMA COMPUTARIZADO (COMPUTERSYSTEM).Computadora–numeroInventarioHardware–tipoComputadora–nombreMarca–modelo–numeroSerie–fechaCompra–costoCompra–costoReemplazo–tamanioMemoria–capacidadDiscoDuro–capacidadSegundoDiscoDuro–discoOptico–garantia–codigoCampus–ubicacionSala–numeroDistribuidor+agregarComputadora()+cambiarComputadora()+eliminarComputadora()+obtenerComputadora()Software–numeroInventarioSoftware–titulo–nombreSistemaOperativo–numeroVersion–editor–codigoCategoriaSoftware–marcaComputadora–memoriaRequerida–licenciaSitio–numeroDeCopias–costoSoftware–numeroEmpleado+agregarSoftware()+cambiarSoftware()+obtenerSoftware()+obtenerTituloSoftware()+eliminarSoftware()Edificio Campus–codigoCampus–descripcionCampus+agregarEdificio()Experto Software–numeroEmpleado–apellidoPaterno–primerNombre–telefonoOficina–email–codigoDepartamento–enseñaCurso+agregarExperto()+cambiarExperto()+eliminarExperto()+obtenerExperto()HardwareSoftware–numeroInventarioHardware–numeroInventarioSoftware+instalarSoftware()+actualizarVersion()+eliminarSoftware()+obtenerSoftware()+obtenerHardware()Sistema Operativo–codigoSistemaOperativo–significadoSistemaOperativo+agregarSistemaOperativo()+cambiarSistemaOperativo()+eliminarSistemaOperativo()+obtenerSistemaOperativo()Categoria Software–codigoCategoriaSoftware–descripcionCategoriaSoftware+agregarNuevaCategoria()+cambiarNombreCategoria()+eliminarCategoria()+obtenerCategoria()11111FIGURA E10.4Diagrama de clases SISTEMA COMPUTARIZADO.www.xlibros.com
CAPÍTULO 10 • ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 325Los siguientes ejercicios se pueden realizar con Microsoft Visio o con Visible Analyst. Hay que usar un rectángulo paraun símbolo de clase al dibujar diagramas de secuencia con Microsoft Visio o Visible Analyst (los símbolos de estereotipode clase no están disponibles). Coloque una etiqueta de texto arriba de cada rectángulo para identificar el tipo de clase:interfaz, control o entidad.E-5. Modifique e imprima el diagrama de actividad REGISTRAR PARA CAPACITACIÓN (REGISTER FOR TRAINING).Consulte la figura E12.3 en el Episodio del caso de la CPU del capítulo 12 para ver el prototipo de esta página Web.Agregue los siguientes símbolos de estado y conexiones de eventos:a. El estado CREAR DATOS XML EMPLEADO (CREATE XML EMPLOYEE DATA) en el carril SERVIDOR WEB(WEB SERVER) debajo del estado OBTENER INFORMACIÓN EMPLEADO (GET EMPLOYEE INFORMA-TION). Conéctelo con una flecha de evento que venga de LEER REGISTRO EMPLEADO (READ EMPLOYEERECORD). Asigne al evento la etiqueta ENVIAR DATOS EMPLEADO (SEND EMPLOYEE DATA).b. Agregue el estado PÁGINA WEB INFORMACIÓN EMPLEADO (EMPLOYEE INFORMATION WEB PAGE) enel carril PÁGINA WEB CLIENTE (CLIENT WEB PAGE) a la izquierda del estado CREAR DATOS XML EM-PLEADO (CREATE XML EMPLOYEE DATA). Conecte los dos estados con una flecha de evento hacia el estadoPÁGINA WEB INFORMACIÓN EMPLEADO (EMPLOYEE INFORMATION WEB PAGE) etiquetada comoENVIAR DOCUMENTO XML EMPLEADO (SEND EMPLOYEE XML DOCUMENT).c. Agregue un estado debajo del estado CREAR DATOS XML EMPLEADO (CREATE XML EMPLOYEE DATA)que se llame BUSCAR CLASE CAPACITACIÓN SOFTWARE (FIND SOFTWARE TRAINING CLASS). Conéc-telo con una flecha de evento que provenga del estado PÁGINA WEB INFORMACIÓN EMPLEADO (EMPLOYEEINFORMATION WEB PAGE) y etiquétela como NIVEL DE SOFTWARE Y CAPACITACIÓN SELECCIONADO(SELECTED SOFTWARE AND TRAINING LEVEL).d. Incluya un símbolo de diamante de decisión debajo del estado BUSCAR CLASE CAPACITACIÓN SOFTWARE(FIND SOFTWARE TRAINING CLASS). Conéctelo con una flecha de evento que provenga del estado BUSCARCLASE CAPACITACIÓN SOFTWARE (FIND SOFTWARE TRAINING CLASS). Un evento debe fluir a la iz-quierda hacia el estado PÁGINA WEB INFORMACIÓN EMPLEADO (EMPLOYEE INFORMATION WEBPAGE), etiquetado como NO SE ENCONTRÓ LA CLASE (CLASS NOT FOUND).e. Agregue un estado SELECCIONAR CLASE SOFTWARE (CHOOSE SOFTWARE CLASS) debajo del estadoPÁGINA WEB INFORMACIÓN EMPLEADO (EMPLOYEE INFORMATION WEB PAGE), y un tanto debajo deldiamante de decisión. Conecte la parte inferior del diamante de decisión con una flecha de evento que vaya hacia elestado SELECCIONAR CLASE SOFTWARE (CHOOSE SOFTWARE CLASS). Etiquétela como CLASES CAPA-CITACIÓN SOFTWARE (SOFTWARE TRAINING CLASES).f. Agregue un estado debajo del diamante de decisión y un tanto debajo del estado SELECCIONAR CLASE SOFT-WARE (CHOOSE SOFTWARE CLASS). Etiquételo como ACTUALIZAR PARTICIPANTE CLASE (UPDATECLASS PARTICIPANT).g. Conecte el estado SELECCIONAR CLASE SOFTWARE (CHOOSE SOFTWARE CLASS) con una flecha deevento que apunte al estado ACTUALIZAR PARTICIPANTE CLASE (UPDATE CLASS PARTICIPANT). Etiqué-tela como ENVIAR SOLICITUD INSCRIBIR CLASE (SEND ENROLL CLASS REQUEST).h. Agregue un símbolo de círculo de salida en la parte inferior del carril Página Web cliente. Conecte el estado SELEC-CIONAR CLASE SOFTWARE (CHOOSE SOFTWARE CLASS) con una flecha de evento que apunte al círculo desalida y etiquétela como CANCELAR (CANCEL).i. Conecte el estado ACTUALIZAR PARTICIPANTE CLASE (UPDATE CLASS PARTICIPANT) con una flecha deevento que apunte al círculo de salida y etiquétela como ACTUALIZACIÓN EXITOSA (SUCCESSFUL UPDATE).E-6. Cree e imprima el diagrama de actividad CALENDARIO CAPACITACIÓN (TRAINING CALENDAR). El prototipopara esta página Web se ilustra en la figura E11.4, que encontrará en el Episodio del caso de la CPU del capítulo 11.Agregue un círculo de inicio en la esquina superior izquierda del diagrama y agregue los siguientes carriles, símbolos deestado y conexiones de eventos:a. Agregue un carril a la izquierda etiquetado como PÁGINA WEB CLIENTE (CLIENT WEB PAGE) y uno a la de-recha llamado SERVIDOR WEB (WEB SERVER).b. Agregue un círculo de inicio en la parte superior del carril PÁGINA WEB CLIENTE (CLIENT WEB PAGE) y de-bajo de éste un estado etiquetado como SOLICITAR PÁGINA WEB CALENDARIO CAPACITACIÓN (REQUESTTRAINING CALENDAR WEB PAGE). Conecte el círculo de inicio al estado con una flecha de evento.c. Agregue un estado en el carril SERVIDOR WEB, a la derecha del estado SOLICITAR PÁGINA WEB CALENDA-RIO CAPACITACIÓN (REQUEST TRAINING CALENDAR WEB PAGE). Etiquételo como OBTENER CLASECAPACITACIÓN (GET TRAINING CLASS).d. Conecte el estado izquierdo al derecho con una flecha de evento etiquetada como SE TRANSMITIÓ FORMULA-RIO (FORM TRANSMITTED).e. Coloque un estado debajo del estado OBTENER CLASE CAPACITACIÓN (GET TRAINING CLASS). Etiquételocomo OBTENER CLASE CAPACITACIÓN (GET TRAINING CLASS), Conecte los dos estados con una flecha deevento hacia abajo etiquetada como ENVIAR NÚMERO CURSO (SEND COURSE NUMBER).f. Coloque un estado en el carril PÁGINA WEB CLIENTE (CLIENT WEB PAGE) a la izquierda del estado OBTE-NER CLASE CAPACITACIÓN (GET TRAINING CLASS). Etiquételo como PANTALLA CURSO CALENDA-RIO CAPACITACIÓN (TRAINING CALENDAR COURSE DISPLAY). Conecte los dos estados con una flecha deevento que apunte hacia la izquierda y etiquétela como ENVIAR VALORES XML CLASE CAPACITACIÓN(SEND TRAINING CLASS XML VALUES).www.xlibros.com
326 PARTE III • EL PROCESO DE ANÁLISISg. Coloque un círculo de salida en la parte inferior del carril PÁGINA WEB CLIENTE (CLIENT WEB PAGE). Conecteel estado PANTALLA CURSO CALENDARIO CAPACITACIÓN (TRAINING CALENDAR COURSE DISPLAY)con una flecha de evento que apunte a la derecha y arriba por el lado derecho del carril SERVIDOR WEB (WEB SER-VER), hacia el estado PANTALLA CURSO CALENDARIO CAPACITACIÓN (TRAINING CALENDAR COURSEDISPLAY). Etiquétela como CAMBIAR FECHA O CAMBIAR ORDEN (DATE CHANGE OR SORT CHANGE).E-7. Modifique e imprima el diagrama de secuencia REGISTRARSE PARA CAPACITACIÓN (REGISTER FOR TRAI-NING). Agregue dos nuevas clases de entidad del lado derecho del diagrama y extienda la línea de vida hacia abajo, hastala parte inferior del diagrama. Las clases son Empleado y Clase. Agregue los siguientes mensajes del CONTROLADORREGISTRARSE PARA CLASE (REGISTER FOR CLASS CONTROLLER) y agregue los rectángulos de foco de con-trol en donde los mensajes interactúan con la línea de vida de la clase:a. obtenerEmpleado() [getEmployee()] del controlador a EMPLEADO (EMPLOYEE).b. regresar datosEmpleado (return employeeData) de la clase EMPLEADO (EMPLOYEE) al controlador.c. buscarClaseSoftware() [findSoftwareClass()] del controlador a la clase de entidad CLASE (CLASS).d. regresar listaClaseSoftware (return softwareClassList) de la clase de entidad CLASE (CLASS) al controlador.e. actualizarParticipanteClase() [updateClassParticipant()] del controlador a la clase de entidad CLASE (CLASS).f. regresar éxito (return success) de la clase de entidad CLASS al controlador.E-8. Cree e imprima el diagrama de secuencia CALENDARIO CAPACITACIÓN (TRAINING CALENDAR). Agregue elactor Docente (Faculty) en la esquina superior izquierda del diagrama y después las siguientes clases, de izquierda aderecha, a lo largo de la parte superior del diagrama:a. La clase de interfaz Mostrar clases capacitación (Display Training Classes).b. La clase de control Mostrar clases capacitación (Display Training Classes).c. La clase de entidad Clase (Class).d. La clase de entidad Curso (Course).Agregue los siguientes mensajes entre las clases o entre el actor y la clase:a. Cargar página Web Calendario capacitación (Load Training Calendar Web page) de Docente (Faculty) a la clase deinterfaz Mostrar clases capacitación (Display Training Classes).b. enviarURLPaginaWeb (sendWebPageURL) de Mostrar clases capacitación (Display Training Classes) a ControladorMostrar clases capacitación (Display Training Classes Controller).c. obtenerClase() [getClass()] del controlador a la clase de entidad Clase (Class).d. regresar listaClases (return classList) de la clase de entidad Clase (Class) al controlador.e. obtenerDescripcionCurso() [getCourseDescription()] del controlador a la clase de entidad Curso (Course).f. regresar descripcionCurso (return courseDescription) de la clase de entidad Curso (Course) al controlador.g. actualizar listaCursos (update courseList) de la clase controladora a la clase de interfaz Mostrar clases capacitación(Display Training Classes).h. Página Web Software laboratorio (Lab Software Web Page) de la clase interfaz Mostrar clases capacitación (DisplayTraining Classes) al actor.i. Cambiar mes/año (Change Month/Year) del actor a la clase de interfaz Mostrar clases capacitación (Display TrainingClasses).j. Una auto-transición en la clase de interfaz Mostrar clases capacitación (Display Training Classes) (use JavaScript paraactualizar el calendario).k. Nuevo Calendario (New Calendar) de la clase de interfaz Mostrar clases capacitación (Display Training Classes) al actor.l. Cambiar fecha (Change Date) del actor a la clase de interfaz Mostrar clases capacitación (Display Training Classes).m. obtenerNuevaClase() [getNewClass()] de Mostrar clases capacitación (Display Training Classes) al controlador.n. Repita los pasos c a g.o. Lista cursos disponible (Course List Available) de la clase de interfaz Mostrar clases capacitación (Display TrainingClasses) al actor.E-9. Modifique e imprima el diagrama de estados Capacitación (Training). Agregue dos estados después de CLASE CAPA-CITACIÓN CANCELADA (CANCELLED TRAINING CLASS) del lado izquierdo del diagrama. Éstos son CLASECAPACITACIÓN ACTIVA (ACTIVE TRAINING CLASS) y, debajo de éste, CLASE CAPACITACIÓN COMPLE-TADA (COMPLETED TRAINING CLASS). Agregue una clase debajo de CLASE CAPACITACIÓN PROGRAMADA(SCHEDULED TRAINING CLASS) llamada INSCRITO CLASE CAPACITACIÓN (ENROLLED TRAININGCLASS). Agregue las siguientes transiciones:a. SE INSCRIBIERON PARTICIPANTES (PARTICIPANTS ENROLLED) del estado CLASE CAPACITACIÓNPROGRAMADA (SCHEDULED TRAINING CLASS) al estado INSCRITO CLASE CAPACITACIÓN (ENRO-LLED TRAINING CLASS).b. CLASE EN SESIÓN (IN SESSION CLASS) del estado INSCRITO CLASE CAPACITACIÓN (ENROLLED TRA-INING CLASS) al estado CLASE CAPACITACIÓN ACTIVA (ACTIVE TRAINING CLASS).c. FINALIZÓ SESIÓN CAPACITACIÓN (TRAINING SESSION ENDED) del estado CLASE CAPACITACIÓNACTIVA (ACTIVE TRAINING CLASS) al estado CLASE CAPACITACIÓN COMPLETADA (COMPLETEDTRAINING CLASS).d. Una flecha de finalización del estado CLASE CAPACITACIÓN COMPLETADA (COMPLETED TRAININGCLASS) a un área en blanco a la derecha.E-10. Cree e imprima el diagrama de estados COMPUTADORA. Hay dos columnas de estados. En la columna izquierda in-cluya los siguientes estados de arriba hacia abajo: NUEVA COMPUTADORA (NEW COMPUTER), CLEANINGCOMPUTER (LIMPIANDO COMPUTADORA) y RECYCLED COMPUTER (COMPUTADORA RECICLADA). Enwww.xlibros.com
CAPÍTULO 10 • ANÁLISIS Y DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML 327la columna derecha incluya los siguientes estados de arriba hacia abajo: COMPUTADORA INSTALADA (INSTALLEDCOMPUTER), COMPUTADORA FUNCIONAL (FUNCTIONAL COMPUTER) y COMPUTADORA RETENIDAREPARACIÓN (REPAIR HELD COMPUTER). Agregue las siguientes transiciones:a. Empiece con SE RECIBIÓ COMPUTADORA (COMPUTER RECEIVED) que pase de un punto en el espacio arribadel rectángulo de estado hacia el estado NUEVA COMPUTADORA (NEW COMPUTER).b. COMPUTADORA INSTALADA (INSTALLED COMPUTER) del estado NUEVA COMPUTADORA (NEWCOMPUTER) al estado COMPUTADORA INSTALADA (INSTALLED COMPUTER).c. SE INSTALÓ SOFTWARE (SOFTWARE INSTALLED) del estado COMPUTADORA INSTALADA (INSTA-LLED COMPUTER) al estado COMPUTADORA FUNCIONAL (FUNCTIONAL COMPUTER).d. SE PROGRAMÓ MANTENIMIENTO (MAINTENANCE SCHEDULED) del estado COMPUTADORA FUNCIO-NAL (FUNCTIONAL COMPUTER) al estado LIMPIANDO COMPUTADORA (CLEANING COMPUTER).e. SE COMPLETÓ MANTENIMIENTO del estado LIMPIANDO COMPUTADORA (CLEANING COMPUTER) alestado COMPUTADORA FUNCIONAL (FUNCTIONAL COMPUTER).f. SE REPORTÓ PROBLEMA (PROBLEM REPORTED) del estado COMPUTADORA FUNCIONAL (FUNCTIO-NAL COMPUTER) al estado COMPUTADORA RETENIDA EN REPARACIÓN (REPAIR HELD COMPUTER).g. SE COMPLETÓ REPARACIÓN (REPAIR COMPLETED) del estado COMPUTADORA RETENIDA EN REPARA-CIÓN (REPAIR HELD COMPUTER) al estado COMPUTADORA RECICLADA (RECYCLED COMPUTER).h. ACTUALIZAR COMPUTADORA IDENTIFICADA del estado COMPUTADORA FUNCIONAL (FUNCTIO-NAL COMPUTER) al estado COMPUTADORA RECICLADA (RECYCLED COMPUTER).i. SE IDENTIFICÓ REPARACIÓN IRREALIZABLE del estado COMPUTADORA RETENIDA EN REPARACIÓN(REPAIR HELD COMPUTER) al estado COMPUTADORA RECICLADA (RECYCLED COMPUTER).j. Una flecha de finalización del estado COMPUTADORA RECICLADA (RECYCLED COMPUTER) a un área enblanco debajo del estado.E-11. Modifique e imprima el diagrama de clase COMPUTADORA (COMPUTER). Cada computadora puede tener uno o mássistemas operativos instalados. Mueva la clase Sistema operativo (Operating System) a la derecha de su ubicación actualy agregue una nueva clase llamada Sistema operativo de computadora (Computer Operating System) debajo de la claseComputadora (Computer). Cambie la línea conectora de Computadora a Sistema operativo para conectar la clase Sistemaoperativo a la clase Sistema operativo de computadora. Agregue una nueva relación entre la clase Computadora (el ladode uno) a la clase Sistema operativo de computadora (el lado de muchos). Agregue los siguientes atributos a la claseSistema operativo de computadora:NumeroInventarioHardwarecodigoSistemaOperativoAgregue los siguientes métodos a la clase Sistema operativo de computadora:agregarSistemaOperativoComputadora()eliminarSistemaOperativoComputadora()Los ejercicios en los que se antepone un icono www indican material de valor agregado disponible en el sitio Web www.pearsonhighered.com/kendall. Los estudiantes pueden descargar un archivo de muestra de Microsoft Visio, Visible Analyst, Microsoft Project o Microsoft Accessque pueden usar para completar los ejercicios.www.xlibros.com
www.xlibros.com
329C A P Í T U L O 1 1Diseño de una salida efectivaOBJETIVOS DE APRENDIZAJEAl completar este capítulo usted podrá:1. Comprender los objetivos para un diseño efectivo de la salida.2. Relacionar el contenido de la salida con los métodos de salida, dentro y fuera de laorganización.3. Comprender cómo afecta a los usuarios la predisposición en la salida.4. Diseñar la salida de pantalla.5. Diseñar tableros de control, widgets y gadgets.6. Diseñar un sitio Web para comercio electrónico.La salida es información que se entrega a los usuarios por medio del sis-tema de información a través de intranets, extranets o la World Wide Web.Algunos datos requieren de mucho procesamiento para poder convertirseen una salida adecuada; otros se almacenan y, cuando se recuperan, se con-sideran salida sin que necesiten mucho procesamiento (a veces no requie-ren procesamiento en absoluto). La salida puede tomar muchas formas: la tradicional copia enpapel de los informes impresos y la copia transitoria como las pantallas, microformas y la salidade video y audio. Los usuarios se basan en la salida para realizar sus tareas y con frecuenciajuzgan el mérito del sistema únicamente con base en ella. Para crear la salida más útil posible,el analista de sistemas trabaja de cerca con el usuario a través de un proceso interactivo hastaque se considere que el resultado es satisfactorio.OBJETIVOS DE DISEÑO DE LA SALIDAComo es esencial una salida útil para asegurar el uso y la aceptación del sistema de informa-ción, hay seis objetivos que el analista de sistemas trata de alcanzar al diseñar la salida:1. Diseñar la salida para servir al propósito previsto.2. Diseñar la salida para ajustarla al usuario.3. Entregar la cantidad apropiada de salida.4. Asegurarse que la salida esté donde se necesite.5. Proveer la salida en forma oportuna.6. Elegir el método de salida correcto.Diseñar la salida para servir al propósito previstoToda salida debe tener un propósito. Durante la fase de determinación de los requerimientosde información del análisis, el analista de sistemas averigua qué propósitos de los usuarios y laorganización existen. Después se diseña la salida con base en esos propósitos.P A R T E I VLos fundamentosdel diseñowww.xlibros.com
330 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOUsted tendrá numerosas oportunidades para proveer la salida simplemente porque la aplicación así se lo per-mite. Sin embargo, recuerde la regla de propósito: si la salida no es funcional, no se debe crear ya que acarreacostos de tiempo y materiales.Diseñar la salida para ajustarla al usuarioEn un sistema de información extenso que atiende a muchos usuarios con muchos fines, y a menudo es difí-cil personalizar la salida. Con base en las entrevistas, observaciones, consideraciones de costo y tal vez losprototipos, es posible diseñar una salida para atender lo que muchos usuarios (si no es que todos) necesitan yprefieren.Hablando en general, es más práctico crear una salida específica o personalizada para el usuario cuando sediseña para un sistema de soporte de decisiones u otras aplicaciones con alto grado de interactividad, como lasque utilizan a la Web como plataforma. Sin embargo, sí es posible diseñar la salida para ajustarse a las tareas y lafunción de un usuario en la organización, lo cual nos lleva al siguiente objetivo.Entregar la cantidad apropiada de salidaParte de la tarea de diseñar la salida es decidir qué cantidad de salida es la correcta para los usuarios. Una heurís-tica útil es que el sistema debe proveer lo que necesita cada persona para realizar su trabajo. Pero esta respuestaestá aún lejos de ser una solución total, ya que tal vez sea apropiado mostrar un subconjunto de esa informaciónal principio y después ofrecer al usuario la manera de acceder a la información adicional con facilidad.El problema de la sobrecarga de información se ha convertido en una condición muy frecuente, por lo queconstituye una preocupación para el diseñador de sistemas. No sirve de nada proporcionar información exce-siva sólo para alardear sobre las capacidades del sistema. Siempre hay que tener en cuenta a los encargados detomar las decisiones. Muy raras veces necesitarán grandes cantidades de salida, en especial si hay una formasencilla de acceder a más información a través de un hipervínculo o una herramienta para explorar estructurasjerárquicas.Asegurarse que la salida esté donde se necesiteCon frecuencia la salida se produce en una ubicación y después se distribuye al usuario. El aumento en el uso dela salida que se muestra a través de una pantalla en línea y a la que se puede acceder personalmente ha reducidoen parte el problema de la distribución, pero la distribución apropiada sigue siendo un objetivo importante para elanalista de sistemas. Para ser útil, la salida se debe presentar al usuario correcto. Sin importar qué tan bien dise-ñados estén los informes, si no los ven los encargados apropiados de tomar las decisiones, no tendrán valor.Proveer la salida en forma oportunaUna de las quejas más comunes de los usuarios es que no reciben la información a tiempo para tomar las deci-siones necesarias. Aunque la sincronización no lo es todo, sí desempeña un importante papel en cuanto a qué tanútil será la salida. Muchos informes se requieren a diario, algunos sólo cada mes, otros anualmente y otros mássólo por excepción. Al usar una salida basada en Web bien promocionada, también podemos solucionar algunosproblemas de sincronización de la distribución de salida. La sincronización precisa de la salida puede ser impres-cindible para las operaciones de negocios.Elegir el método de salida correctoLa elección del método de salida correcto para cada usuario es otro de los objetivos del diseño correcto de salida.Gran parte de la salida aparece ahora en pantallas donde los usuarios tienen la opción de imprimirla. El analistanecesita reconocer los conflictos involucrados en el proceso de elegir un método de salida. Los costos difieren;para el usuario también hay diferencias en cuanto a accesibilidad, flexibilidad, durabilidad, distribución, posibi-lidades de almacenamiento y recuperación, capacidad de transportación e impacto general de los datos. La elec-ción de los métodos de salida no es trivial y tampoco es una cuestión resuelta.RELACIONAR EL CONTENIDO DE LA SALIDA CON EL MÉTODO DE SALIDADebemos considerar que el contenido de la salida de los sistemas de información está interrelacionado con elmétodo de salida. Cada vez que diseñamos la salida, necesitamos pensar acerca de cómo la función influye sobrela forma y cómo influirá el propósito previsto en el método de salida que seleccionemos.Debemos pensar sobre la salida en sentido general, de manera que cualquier información que produzca elsistema computarizado y que sea útil para las personas se pueda considerar como salida. Es posible conceptua-lizar la salida como externa (que sale de la empresa); por ejemplo, la información que aparece en el sitio Webpara el público, o como interna (que permanece dentro del negocio); por ejemplo, el material disponible en unaintranet.www.xlibros.com
CAPÍTULO 11 • DISEÑO DE UNA SALIDA EFECTIVA 331Marque esta casilla si tiene nuevadirección y escríbala a continuación.1000 N St.Lincoln, NE 68501Número de cuenta640-056-175Indique el montoa pagarEckert Caryn S123 Oak StreetLincoln, NE 68501Monto vencido$17.38Dirección de servicio Número de cuenta640-056-175Lectura anterior1517Fecha de facturación7/8/2009Lectura actual1547Fecha en que sedebe recibir el pagopara poder acreditarloen la siguiente factura5 de ago de 2009El cliente escribeel monto del pagoen esta área.El logotipo ynombre de laempresa estánpre-impresos en lafactura.Se provee un áreapara que losclientesproporcionen unanueva dirección.Una computadoraimprime lainformación sobrela cuenta.FIGURA 11.1Un documento retornable para elprocesamiento de datos deMinigasco.La salida externa es algo con lo que estamos familiarizados: facturas, anuncios, cheques de nómina, infor-mes anuales y una multitud de comunicaciones que tienen las organizaciones con sus clientes, distribuidores,proveedores, industria y competidores. El analista diseña una parte de esta salida, como las facturas de los servi-cios públicos, para que sirva una doble función como documento retornable. La figura 11.1 es un recibo de gasque sirve como documento retornable para el procesamiento de datos de la compañía de gas. La salida de unaetapa del procesamiento se convierte en la entrada para la siguiente. Cuando el cliente devuelve la parte desig-nada del documento, se digitaliza esta parte y se utiliza como entrada de computadora.La salida externa difiere de la interna en cuanto a su distribución, diseño y apariencia. Muchos documentosexternos deben incluir instrucciones para que el receptor pueda utilizarlos en forma correcta. Muchas salidas ex-ternas se colocan en formularios impresos o en sitios Web que muestran el logotipo de la empresa y los colorescorporativos.Las salidas internas incluyen varios informes para los encargados de tomar decisiones. Varían desde infor-mes cortos y sintetizados hasta los largos y detallados. Un ejemplo de informe sintetizado es un informe quepresenta sólo los totales de las ventas mensuales; un informe detallado podría mostrar las ventas semanales porvendedor.Otros tipos de informes internos incluyen los informes históricos y los informes de excepciones que seproducen como salida sólo en el momento en que ocurre una excepción. Algunos ejemplos de informes de ex-cepciones son el listado de todos los empleados sin faltas en todo el año, un listado de todos los vendedores queno cumplieron con su cuota de ventas mensual o un informe sobre las quejas de los consumidores durante losúltimos seis meses.Tecnologías de salidaPara producir diferentes tipos de salida se requieren distintas tecnologías. Para la salida impresa, las opciones in-cluyen una amplia variedad de impresoras. Para la salida en pantalla, las opciones incluyen pantallas conectadaso independientes. La salida de audio se puede amplificar a través de un altavoz o escuchar a través de bocinas,que pueden variar desde las más pequeñas hasta los sistemas de sonido envolvente para PC. También se puedediseñar la salida de audio para teléfonos móviles. La salida electrónica se crea mediante herramientas de soft-ware especiales. Como podemos ver, las opciones son numerosas. La figura 11.2 muestra una comparación delos métodos de salida.IMPRESORAS Como los informes impresos son un tipo muy común de salida, es lógico suponer que las impresorasestán omnipresentes en cualquier organización grande. Aunque hay otros tipos de salida que están ganandopopularidad, es probable que los negocios sigan deseando la salida impresa, o que quieran diseñar salida con unabuena apariencia si los clientes, proveedores o distribuidores la imprimen mediante su propio software y hardware.www.xlibros.com
332 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOPantalla • InteractivaTransmisión en línea y tiempo realSilenciosaAprovecha las capacidades de la computadora paradesplazarse por las bases de datos y los archivosBuena para los mensajes efímeros con accesofrecuente• Puede requerir cables y espacio para su instalaciónDe todas formas se puede requerir documentaciónimpresa Salida de audioy podcasts• Buena para usuarios individualesBuena para mensajes transientesBuena en donde el trabajador necesita las manos libresBuena si hay que distribuir la salida en áreasmuy amplias• Se requieren audífonos cuando la salida no debe interferircon otras tareasTiene una aplicación limitadaDVC, CD-ROMy CD-RW• Tiene gran capacidadPermite salida multimedia• Se requiere una computadora y una pantalla para leerlos datosSalida electrónica(email, sitios Web,blogs y fuentes RSS)• Reduce el papelSe puede actualizar con mucha facilidadSe puede “transmitir”Se puede hacer interactiva• No contribuye al formato (email)Es difícil transmitir el contexto de los mensajes (email)Los sitios Web requieren de un mantenimiento diligenteMétodo de salida Ventajas DesventajasImpresora • Asequible para la mayoría de las organizaciones • Aún se requiere de intervención por parte del operador.Problemas de compatibilidad con el software de computadoraPuede requerir provisiones especiales y costosasPuede ser lenta, dependiendo del modeloPoco amigable para el ambiente• Flexible en cuanto a tipos de salida, ubicacióny capacidadesManeja grandes volúmenes de salidaAltamente confiable, con poco tiempo de inactividad FIGURA 11.2Una comparación de los métodos de salida.Las impresoras ahora tienden a ser más flexibles, lo que se traduce en procesos de expansión de opcionespara la ubicación del sitio de impresión, alojar distintos números de caracteres por página, incluyendo diversosestilos y fuentes, cambiar la posición de impresión en la página, incluir mayor capacidad de gráficas y color, pro-ducir una impresión más silenciosa, proteger el ambiente, reducir el número de formularios impresos en el inven-tario, simplificar las tareas del operador y reducir la cantidad de intervención del operador en general.En conjunto con los usuarios, el analista de sistemas debe determinar el propósito de la impresora. Una vezestablecido esto, hay que tener en cuenta tres factores clave de las impresoras:1. Confiabilidad.2. Compatibilidad con software y hardware.3. Soporte del fabricante.PANTALLAS COMO SALIDA Las pantallas son una tecnología de salida cada vez más popular. Usadas en unprincipio para la introducción de datos, las pantallas se están convirtiendo también en una tecnología viable paramuchos otros usos a medida que disminuye su tamaño y su precio, a la vez que aumenta su compatibilidad conotros componentes del sistema.Las pantallas tienen distintas ventajas sobre las impresoras debido a que son más silenciosas y tienen poten-cial para la participación interactiva de los usuarios. La salida de pantalla puede ofrecer flexibilidad al permitir alusuario cambiar la información de salida en tiempo real por medio de la eliminación, adición o modificación dedatos. Las pantallas también permiten revisar la salida almacenada por medio del acceso a (y la visualización de)los elementos de una base de datos relevante, con lo cual cada uno de los encargados de tomar decisiones puededejar de almacenar impresiones redundantes.Las pantallas como salida producen ahorros en el costo. Si los usuarios pueden realizar sus tareas al interactuarcon una pantalla tal vez no necesiten papel, con lo cual se elimina el costo de imprimir, archivar y almacenar en me-dios físicos. Si antes se enviaba un informe por correo convencional, al convencer a los usuarios de que vean los docu-mentos en pantalla podemos ahorrarnos los costos de correo y de impresión. Los corredores de bolsa, las compañíastelefónicas, las empresas de servicios públicos y los bancos ofrecen la entrega electrónica de la salida a sus clientes.La visualización electrónica también puede ser conveniente desde el punto de vista del usuario. Tal vez unusuario sólo quiera dar un vistazo a un estado de cuenta mensual para verificar que no tenga errores. Sin em-www.xlibros.com
CAPÍTULO 11 • DISEÑO DE UNA SALIDA EFECTIVA 333bargo, el usuario necesita archivar ese estado de cuenta por cuestiones fiscales. Si el estado de cuenta se entregapor correo electrónico, tal vez la copia electrónica sea todo lo que el usuario necesite. Esto ayudará a mantenerlos registros y alentará en consecuencia al usuario a que prefiera el estado de cuenta electrónico en vez del im-preso. Otra razón para preferir la salida de pantalla a la salida de papel es que es más fácil mantener actualizadala versión electrónica.Una desventaja potencial es la de mostrar la salida en una variedad de pantallas que utilizan distintas resolucio-nes. Si la pantalla que se visualiza es de una página Web, el programador de la página Web necesita un plan para re-visar las imágenes en cada resolución (por ejemplo, 800 × 600, 1600 × 1200, etcétera) y usar distintos navegado-res para asegurarse de que las páginas tengan una apariencia similar. Si los usuarios necesitan acceso a teléfonosinteligentes o teléfonos móviles para completar su tarea, tal vez también haya que desarrollar páginas Web especiales.Si la salida es un informe en vez de una página Web, el analista se enfrenta al reto de resolver otros proble-mas. Tal vez los usuarios no tengan las fuentes necesarias en sus computadoras y sus documentos de MicrosoftWord estén personalizados con márgenes inusuales. Si se envía un documento de Word por correo electrónico, eldocumento con un hermoso formato en la computadora del emisor podría terminar viéndose muy mal en la pan-talla del receptor. Una solución es la de convertir la salida a archivos PDF mediante Adobe Acrobat. Esto permiteincrustar fuentes inusuales y establecer todos los márgenes en forma apropiada sin importar qué computadora oresolución de pantalla la despliegue.VIDEO, AUDIO Y ANIMACIÓN Muchas de las herramientas y paquetes de aplicaciones con los que usted vaya atrabajar le facilitarán el proceso de incluir video en las opciones de salida. El video es una forma compleja desalida, ya que combina la solidez y el potencial impacto emocional del audio (incluyendo efectos de sonido, vozy música) con un canal visual. Algunas aplicaciones conocidas son las que están basadas en Web. Examine lafigura 11.3: muestra una página Web que incluye seis cortos en video del Tazón del Conocimiento del DecisionSciences Institute (DSI); en este caso es conveniente incluir salida en video del evento, pues conmemora unaniversario importante en la historia del instituto.Hay muchos usos para la inclusión de salida de video en las pantallas de los usuarios. Los video clips sonuna salida conveniente para:1. Complementar la salida estática.2. Permitir una colaboración a distancia que conecte a las personas que no se pueden reunir con frecuencia, porejemplo, un equipo que, distribuido en puntos geográficos distantes, debe trabajar en un mismo proyecto.3. Mostrar cómo llevar a cabo una acción, como demostrar la manera en que se debe llenar un formulario,instalar cierto software o ensamblar un producto.4. Proveer episodios de capacitación breves que sean específicos para un trabajo o tarea, de manera que se hagaénfasis en una nueva habilidad.5. Desplazar el tiempo de un evento real, al grabarlo para verlo después.6. Preservar una ocasión importante para agregarla a los archivos de una organización.FIGURA 11.3Se puede utilizar video de flujocontinuo en forma efectiva paracontar una historia o compartir unevento. Esta página Web relataun evento conocido como el Tazóndel Conocimiento de DSI.www.xlibros.com
334 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOEn cierta forma, podemos considerar la salida de audio como lo opuesto a la salida impresa. La salida deaudio es transitoria, mientras que la palabra impresa es permanente. Por lo general, la salida de audio es parabeneficio de un usuario, mientras que la salida impresa se distribuye comúnmente a muchas personas. El oídohumano interpreta la salida de audio como voz, aunque en realidad se produce a través de sonidos digitales dis-cretos que se reúnen de tal forma que se perciban como palabras continuas. Las compañías telefónicas fueron delas primeras empresas en producir sistemas que utilizan audio para los clientes.El sonido también puede mejorar una presentación. Podemos conseguir fácilmente música y efectos desonido del dominio público. Los paquetes de presentaciones como Microsoft PowerPoint permiten a los usua-rios insertar sonido, música e incluso videos. Los archivos de sonido existen en varios formatos, pero algu-nos de los más comunes para las PC son los archivos MP3, WMP (Windows Media Player), .aac (iTunes eiPhone) y .WAV.La salida de audio se utiliza para proveer de ”personal” los números telefónicos gratuitos de venta por catálogoactivos las 24 horas del día, los siete días de la semana. Mediante un sistema telefónico digital, los consumidorespueden llamar y, en respuesta a instrucciones en salida de audio, introducen número de artículo, cantidad, precio ysu número de tarjeta de crédito. Las tiendas capturan así ventas que perderían de otra forma, ya que podría ser de-masiado costoso contratar a empleados que se ocupen de contestar llamadas las 24 horas.Al usar audio y sistemas telefónicos para introducir datos, asegúrese de proveer una retroalimentación apro-piada para el usuario, como “Ha indicado treinta y tres dólares. Presione uno si es correcto. Presione dos paracambiar”. La entrada de audio debe contar con un guión bien diseñado y una secuencia clara. Hay que mantenerlas instrucciones de audio breves, para que las personas puedan recordar los segmentos iniciales.Podcasting es la técnica de colocar archivos de voz descargables en un sitio Web. Estos archivos de voz sepueden utilizar para informar a los clientes sobre nuevos productos o sobre el producto de la semana, proveer unpaseo por una ciudad o destino turístico, presentar noticias y muchas otras aplicaciones. La capacidad de descar-gar archivos de audio y video ha estado disponible por un buen tiempo ya en la Web, pero el podcasting utilizaun pequeño archivo RSS (un archivo XML) para almacenar la versión más reciente de un podcast (si los archivoscambian con frecuencia).La animación es otra forma de salida que podemos utilizar para mejorar un sitio Web o una presentación. Laanimación es la presentación de distintas imágenes en una serie, una a la vez. Las imágenes de animaciones estáncompuestas de varios elementos básicos. Los símbolos elementales pueden ser objetos abstractos o fotografíasreales, y pueden tomar distintos colores, formas y texturas. La orientación espacial ayuda al usuario a determinarsi los símbolos están o no muy relacionados entre sí. Los efectos de transición pueden ser graduales o abruptos,al igual que en las transiciones de las diapositivas de PowerPoint. Los efectos de alteración incluyen cambiar elcolor, el tamaño o la textura; además se puede incluir la transformación de la imagen a través del “morphing”.Si se utiliza la animación para apoyar la toma de decisiones, los experimentos han demostrado que el uso deimágenes reales en vez de abstractas produce una mejor calidad en las decisiones. Los sujetos experimentales quevieron transiciones animadas graduales, en vez de abruptas, pudieron tomar mejores decisiones. Al usar la anima-ción en páginas Web, tenga cuidado en mantener las secuencias armonizadas y no las atiborre de elementos.CD-ROM Y DVD Con la creciente demanda de salida multimedia, se ha esparcido ampliamente la visualizaciónde material en CD-ROM. Los CD-ROM son menos vulnerables a los daños producidos por el manejo humano,en comparación con otros tipos de salida. Los CD-ROM pueden incluir texto y gráficos a todo color, así comomúsica y video de movimiento continuo, por lo que como medio de salida ofrecen al diseñador una máximacreatividad. El DVD (disco versátil digital) también es una tecnología de salida útil. Los DVD se utilizan no sólopara salida sino también como almacenamiento de respaldo.SALIDA ELECTRÓNICA Muchos de los nuevos sistemas basados en Web que usted diseñará tienen la capacidad deproducir salida electrónica en forma de correo electrónico, fax y mensajes de tableros electrónicos que puedenenviarse de una computadora a otra sin necesidad de una copia impresa.El correo electrónico se puede establecer y operar en forma interna en la organización por medio de unaintranet, o por medio de compañías de comunicaciones o proveedores de servicio en línea. Al diseñar sistemasde correo electrónico podemos brindar soporte a la comunicación en toda la organización. Un sistema de correoelectrónico útil y flexible puede formar la base de soporte para los grupos de trabajo.Se están diseñando dos grupos de tecnologías recientes que permiten a los usuarios extraer información dela Web y también permiten a las organizaciones enviar información a los usuarios en forma periódica para lasorganizaciones. A estas tecnologías de salida se les conoce como tecnologías push y pull, para reflejar la formaen que los usuarios y las organizaciones buscan información en la Web y la “jalan” para descargarla o hacen quese les envíe, o “empuje” hacia ellos.Las fuentes RSS (sindicación realmente simple) son documentos de XML que los usuarios pueden obtenerde vínculos en páginas Web o a los que se pueden suscribir. Contienen un título, que por lo general es el mismonombre que el sitio Web de la fuente RSS; un vínculo, que con frecuencia es el mismo vínculo que el de la páginawww.xlibros.com
CAPÍTULO 11 • DISEÑO DE UNA SALIDA EFECTIVA 335O P O R T U N I D A D D E C O N S U L T O R Í A 1 1 . 1¿Tu jaula o la mía?“¿Por qué no pueden hacer esto bien? Me está distrayendomucho. El zoológico en Colombia me escribió sobre un tigre quenos prestaron desde 2002. Deberían escribir a Tulsa”, exclama EllaFant mientras ondea una carta en el aire. Ella es la encargada en jefedel programa de cría de animales en el zoológico Gotham.Ella se encuentra hablando con los miembros del comité decinco personas del zoológico sobre las propuestas a considerar. Elcomité se reúne cada mes para decidir qué animales prestar a otroszoológicos y cuáles recibir en préstamo para criarlos. El comité estácompuesto por Ella Fant, la encargada en jefe; Ty Garr, el directordel zoológico; dos empleados del zoológico, Annie Mall y MonaKey; y Rex Lyon, un empresario de la comunidad.Ty pasa al frente del grupo y continúa con la reunión diciendo:“Tenemos la posibilidad de prestar dos de nuestros monos tamarinosdorados y tenemos también la oportunidad de actuar como casamen-teros para dos pandas menores. Como tres de ustedes son nuevos enel comité, hablaré brevemente sobre sus responsabilidades. Comosaben, Ella y yo nos abalanzaríamos sobre cualquier oportunidad deatraer animales al zoológico para el programa de cría. Su deber esevaluar los recursos financieros del zoológico y analizar las deman-das inmediatas del mismo. También deben considerar la temporaday nuestra capacidad de embarque, así como la de los otros zoológi-cos que estamos considerando. Los demás zoológicos no nos cobrannada por prestarnos sus animales para el programa de cría. Pagamosel embarque por cualquier animal que se nos haya prestado y des-pués los mantenemos, y eso es costoso”:“Estamos enlazados vía Internet a una base de datos de espe-cies seleccionadas con otros 164 zoológicos”, dice Ella para reto-mar la historia de Ty. “Mi oficina tiene una computadora equipadacon una pantalla, puedo acceder a los registros de todos los anima-les cautivos en el sistema, incluyendo los de los dos zoológicos conlos que estamos negociando en estos momentos”.Mientras los miembros del comité trabajan, empiezan a hacerpreguntas: “Necesito leer información, conseguir algo de carne enla que pueda hundir mis dientes, antes de poder decidir si el prés-tamo de los pandas menores es una buena idea. ¿En dónde están losdatos sobre los animales que estamos considerando?”, gruñe Rex.Annie responde, “Tenemos que ir a la oficina de Ella paraconseguirlos. Normalmente, los otros empleados que necesitan sa-ber simplemente usan su computadora”.Mona interviene en la discusión para decir: “También seríagenial obtener información sobre el estado actual del presupuesto.Me volveré loca con los nuevos gastos hasta que tengamos por lomenos un resumen de lo que estamos gastando. Apuesto a que esbastante”.Ty responde: “No queremos andarnos por las ramas: franca-mente nos sentimos atrapados. Los costos de reproducir todos losdatos financieros nos parecen altos. ¡Preferiríamos invertir nuestrodinero en reproducir especies raras y en peligro de extinción! Lapapelería se multiplica por sí sola”.El grupo se ríe con nerviosismo, pero hay un aire de expecta-ción en la sala. El consenso es que los miembros del comité necesi-tan más información interna sobre el estado financiero del zoológicoy los animales candidatos para préstamo.Ella, que está consciente de que el grupo no se puede domar dela misma forma que el anterior, dice: “El viejo comité prefería ob-tener su información de manera informal, charlando con nosotros.Aprovechemos esta primera reunión para descubrir los tipos dedocumentos que ustedes creen que necesitan para realizar su trabajocomo comité. Los datos financieros están en una PC individual queutiliza nuestro director financiero. Desde luego que es su bebé”.¿Cuáles son algunos de los problemas relacionados con la sa-lida que experimenta el comité? ¿Qué sugerencias tiene para mejo-rar la salida para el comité? ¿Cómo pueden cumplirse lasrestricciones de presupuesto del zoológico al tiempo que se permitaal comité recibir la salida que necesita para funcionar? Comente conrespecto a si la capacidad de la tecnología de salida que se utilizaactualmente en el zoológico es la adecuada. Sugiera alternativas omodificaciones para la salida y opciones de tecnología de salida quepodrían mejorar lo que se hace en la actualidad. (Sugerencia: con-sidere las formas en que el comité puede aprovechar el uso de Inter-net —por ejemplo, empleando más la Web— para obtener la salidaque necesita y debe compartir). Analice los requerimientos de sa-lida tanto interna como externa.Web; una descripción breve; la leyenda de copyright; el lenguaje en el que está escrito el texto, en donde se utilizaun código estándar como en-us (para inglés-Estados Unidos); pubDate (la fecha de publicación); lastBuildDate(la fecha en que se hizo la última modificación a la fuente RSS); imágenes; texto y demás información. Por lo ge-neral, las fuentes RSS se marcan en una página Web mediante el texto XML o RSS blanco en un botón naranja.Hace poco tiempo se introdujo un cuadrado naranja con tres líneas blancas que representan ondas de radio en Fi-refox como un símbolo de botón secundario, y está ganando popularidad.Se supone que RSS debe ser realmente simple. Está formado por una fuente (también conocida comocanal), la cual consta de un título, un vínculo y una descripción, seguida de varios artículos de noticias, cadauno con su propio título, vínculo y descripción. Aunque se supone que debe ser simple, debe considerarseque hay más de media docena de versiones de RSS, además de un formato de sindicación similar conocidocomo Atom. Los desarrolladores pueden proveer fuentes RSS en el sitio Web de su empresa o desarrollarlospara sus clientes.Para leer la fuente RSS se utiliza software lector de RSS, que a menudo es un programa gratuito. Estos lec-tores, conocidos también como agregadores de noticias, son programas que rastrean actualizaciones, descargan,clasifican y muestran las fuentes RSS. RSS es una forma de recopilar y distribuir noticias y demás contenidode varias fuentes. Los lectores de noticias RSS pueden ser independientes o estar integrados con el navegadorwww.xlibros.com
336 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOen forma de complementos. Al momento de escribir este libro, los lectores de noticias populares son Bloglines,BottomFeeder, FeedDemon, MY MSN, My Yahoo!, NewsIsFree, NEWSMONSTER, Pluck, RSSBANDIT,SHARPREADER y Wizz RSS (para el navegador Firefox). Pronto se sacudirá el mercado para los lectores RSSy sólo sobrevivirán unos cuantos de ellos.RSS tiene la ventaja de organizar con eficiencia las noticias y demás información proveniente de una varie-dad de fuentes elegidas por el usuario. Además muestra las noticias más recientes primero. RSS no se limita a lasnoticias; también se puede usar para llevar el registro de la revisión más reciente de un libro o manuscrito, leernuevas reseñas de cine y teatro, o conocer de manera anticipada el nuevo software para nuestro teléfono móvil.TECNOLOGÍA PULL Es una importante tecnología de salida que se hizo posible gracias a la Web. Si algunavez ha intentado jalar información de la Web al hacer clic en vínculos, ha utilizado el tipo más básico detecnología pull.En el futuro tal vez se utilicen agentes evolucionarios (programados mediante el uso de software de agenteinteligente) para ayudar a los miembros de una organización a encontrar lo que necesitan en la Web. Estos agen-tes aliviarán parte de la carga común de los usuarios al buscar en Web, debido a que observarán y comprenderánel comportamiento de los usuarios a medida que éstos interactúan con una variedad de material en Web, y des-pués se pueden programar para buscar la información que desean los usuarios. De esta forma, las búsquedas enWeb serán más eficientes y efectivas para los usuarios.TECNOLOGÍA PUSH El contenido Web e inalámbrico que se suministra por medio de la tecnología push esotro tipo de salida que diseñan los analistas. La tecnología push se puede utilizar en la comunicación externapara empujar (enviar en forma electrónica) la información solicitada o no solicitada a un cliente o consumidor.También se puede utilizar dentro de la organización para obtener la atención inmediata de un empleado o dealguien encargado de tomar decisiones que se enfrente a un plazo crítico para entregar elementos críticos. Eltérmino tecnología push se puede describir como cualquier tipo de contenido que se envía a los usuarios entiempos especificados, desde webcasting básico hasta la entrega de contenido selectivo mediante el uso desofisticados agentes de filtrado evolucionarios.Muchas empresas tanto tradicionales como basadas en Internet están experimentando con la tecnologíapush. Esta tecnología puede obtener la información para la persona que la necesita. Es menos costoso transmitirinformación a todos los empleados que imprimir la información y después distribuirla a unos cuantos seleccio-nados. Sin embargo, el analista necesita protegerse para evitar inundar a los empleados al publicar informaciónsin sentido.Las tecnologías push son muy flexibles. Por ejemplo, cuando se transmite la salida de una intranet a una PC,el usuario puede tomarla y personalizarla de muchas formas. Tal vez un empleado decida ver un solo producto odesee generar una gráfica de las ventas a través del tiempo.Factores a considerar al elegir la tecnología de salidaAl seleccionar tecnología de salida es necesario considerar ciertos factores, algunos de los cuales se mantienenestables aunque la tecnología evolucione. Considere que en algunos casos deberá elegir o uno u otro. Los princi-pales factores a considerar son:1. ¿Quién utilizará (verá) la salida (calidad requerida)?2. ¿Cuántas personas necesitan la salida?3. ¿Dónde se necesita la salida (distribución, logística)?4. ¿Cuál es el propósito de la salida? ¿Qué tareas de usuario y organizacionales se admiten?5. ¿Cuál es la velocidad con la que se necesita la salida?6. ¿Con qué frecuencia se accederá a la salida?7. ¿Cuánto tiempo se almacenará (o se debe almacenar) la salida?8. ¿Bajo qué leyes especiales se produce, almacena y distribuye la salida?9. ¿Cuáles son los costos iniciales y continuos del mantenimiento y los suministros?10. ¿Cuáles son los requerimientos humanos y ambientales (accesibilidad, absorción de ruido, temperaturacontrolada, espacio para equipo, cableado y proximidad a los transmisores o puntos de acceso Wi-Fi; esdecir, los “”puntos calientes” o hot spots) para las tecnologías de salida?Al examinar cada factor por separado, usted podrá ver las interrelaciones y cómo se pueden realizar concesionesentre uno y otro en un sistema específico.¿QUIÉN UTILIZARÁ (VERÁ) LA SALIDA? Es importante descubrir quién utilizará la salida, ya que los requeri-mientos de trabajo ayudan a dictar cuál es el método de salida apropiado. Por ejemplo, cuando los gerentesde distrito deben estar alejados de sus escritorios por periodos extendidos, necesitan salida impresa que puedaviajar con ellos, o tecnología que pueda acceder a los sitios Web y bases de datos apropiadas mientras visitanwww.xlibros.com
CAPÍTULO 11 • DISEÑO DE UNA SALIDA EFECTIVA 337a los gerentes en su región. La salida de pantalla o los documentos Web interactivos son excelentes parapersonas tales como los despachadores de camiones que permanecen sentados en su escritorio por largosperiodos de tiempo.Los recipientes externos de la salida (clientes y consumidores, distribuidores y proveedores, accionistas yagencias regulatorias) y los usuarios dentro de las empresas requerirán de una salida distinta. Los clientes, dis-tribuidores y proveedores pueden ser parte de varias extranets, que son redes de computadoras construidas por laorganización y proveen aplicaciones, procesamiento e información a los usuarios en la red.Examine el sitio Web que se muestra en la figura 11.4 para una empresa de comercio electrónico llamadaMerchants Bay. El diseñador Web está compenetrado con los usuarios previstos del sitio de regalos de mayoreo.El sitio Web de la empresa de comercio electrónico está operado por un algoritmo de negociación patentado, enel cual los usuarios envían sus ofertas (por 1 artículo o por 400) en una matriz de mercancía. La estrategia de laempresa se basa en la experiencia personal del presidente con los mercados callejeros y la observación de quehay una atracción muy poderosa entre las personas y regatear por un artículo.El sitio Web invoca de manera intencional una sensación de amontonamiento, similar a la sensación quese obtiene al caminar por un mercado callejero. El sitio está previsto para los clientes que frecuentan mercadoscallejeros en persona: se sabe que son coleccionistas, sociables y curiosos por naturaleza. El sitio Web muestraprofusión de colores, incluye una variedad de anuncios de venta en una mezcla de letras e incluso incorpora unvideo que proporciona nuevas capas de color y acción. Se utiliza un lenguaje coloquial en todo el sitio.Cabe mencionar que el eslogan de la empresa es “proveedor de buena mercancía”. El diseñador Web haempleado una metáfora náutica en todo el sitio. Se invita al usuario a “buscar en la bahía” para ver toda la mer-cancía. Además, el logotipo de la empresa incluye una ola y un sol en el horizonte, y hay un icono del timón deun barco colocado encima de una columna para invitar al usuario a “navegar” en busca de productos, servicios yservicio al cliente.Para completar una transacción en el sitio, el cliente tiene la oportunidad de aceptar el “precio del capitán”publicado, o puede enviar una oferta. Si se envía una oferta demasiado baja de acuerdo con el algoritmo de ne-gociación almacenado, se devuelve una respuesta en lenguaje natural en una ventana desplegable, la cual dice:“Gracias por su oferta, marinero. No le gusta deshacerse de su dinero si no tiene que hacerlo, ¿verdad? Aún asíme simpatiza, marinero. Intente de nuevo y ofrezca un mejor precio, o pida una cantidad mayor”. De esta forma,la oferta se rechaza de una manera amigable y humorística, y las personas que ofertan reciben dos sugerenciassobre cómo mejorar la probabilidad de que sus siguientes ofertas tengan éxito. Sin duda, el diseñador Web teníaen mente un sólido perfil del cliente previsto al diseñar el sitio.¿CUÁNTAS PERSONAS NECESITAN LA SALIDA? La elección de la tecnología de salida también se ve influenciada porla cantidad de usuarios que requieren la salida. Si muchas personas necesitan la salida, probablemente se justifiqueel uso de documentos basados en Web con opción para imprimir o copias impresas. Tal vez algunos clientesexternos quieran una copia impresa de documentos específicos, como el informe para un accionista o un estado deFIGURA 11.4Al diseñar un sitio Web, esimportante elegir una metáforaque se pueda utilizar en todo elsitio. Este ejemplo de MerchantsBay (www.merchantsbay.com)emplea un tema náutico.www.xlibros.com
338 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOcuenta de facturación mensual, pero otros podrían preferir documentos basados en Web con una notificación víacorreo electrónico. Si sólo un usuario necesita la salida, podría ser más adecuado usar una pantalla o audio.Si muchos usuarios en la empresa necesitan distintas opciones de salida en distintos momentos durante pe-riodos cortos y la necesitan con rapidez, los documentos Web o pantallas conectadas a terminales en línea quepuedan acceder al contenido de bases de datos son una opción viable.¿DÓNDE SE NECESITA LA SALIDA (DISTRIBUCIÓN, LOGÍSTICA)? La elección de la tecnología de salida también seve influenciada por el destino físico de la salida. La información que permanecerá cerca de su punto de origen,que sólo unos cuantos usuarios en la empresa utilizarán y que tal vez se almacene o use con frecuencia, se puedeimprimir o montar en una intranet sin peligro. Una cantidad abundante de información que se deba transmitir alos usuarios a través de grandes distancias en operaciones con sucursales tal vez se distribuya mejor en formaelectrónica, a través de la Web o de extranets, y el receptor puede personalizarla.Algunas veces, las leyes federales o estatales dictan que un formulario impreso debe permanecer en los ar-chivos en una ubicación específica y durante un periodo especificado. En esos casos es responsabilidad del ana-lista de sistemas asegurarse que se cumpla con las leyes para cualquier salida que se diseñe.¿CUÁL ES EL PROPÓSITO DE LA SALIDA?. ¿Qué tareas de usuario y organizacionales se aceptan? Considere elpropósito de la salida al momento de elegir la tecnología de salida. Si está destinada a ser un informe creado paraatraer accionistas a la empresa, al permitirles examinar las finanzas corporativas a sus anchas, es conveniente unasalida impresa bien diseñada tal como un informe anual. También se puede utilizar una variedad de medios demanera que el informe anual esté disponible en la Web, así como en forma impresa.Si el propósito de la salida es proveer actualizaciones instantáneas sobre las cotizaciones en la bolsa, y siel material cuenta con un alto grado de codificación y puede cambiar, es más adecuado el uso de una pantalla,páginas Web o presentaciones de audio. La salida debe brindar soporte a las tareas de los usuarios, como la rea-lización de análisis o la determinación de proporciones, de forma que las herramientas de software, incluyendocalculadoras y fórmulas incrustadas, podrían ser parte de la salida. También deben brindar soporte a las tareasorganizacionales como el rastreo, la calendarización y la supervisión.¿CUÁL ES LA VELOCIDAD CON LA QUE SE NECESITA LA SALIDA? Al avanzar por los tres niveles de administraciónestratégica, media y de operaciones en la organización, descubrimos que los encargados de tomar decisionesen el nivel más bajo de la administración de operaciones necesitan la salida con rapidez, para poder ajustarserápidamente a eventos como una línea de ensamblaje detenida, materia prima demorada o un trabajador ausenteen forma inesperada. Aquí podría ser útil la salida de pantalla.Al subir por los niveles administrativos observamos que los gerentes estratégicos necesitan más la salida du-rante un periodo específico, lo cual ayuda a pronosticar los ciclos y las tendencias de negocios.¿CON QUÉ FRECUENCIA SE ACCEDERÁ A LA SALIDA? Entre más frecuente sea el acceso a la salida, más importanteserá la capacidad de verla en una pantalla conectada a las redes de área local o la Web. La salida a la que se accedecon poca frecuencia y que sólo unos cuantos usuarios necesitan es ideal para un archivo de CD-ROM.La salida a la que se accede con frecuencia es ideal para incorporarla en los sistemas basados en Web u otrossistemas o redes en línea con pantallas. Al adoptar este tipo de tecnología, los usuarios obtienen un acceso oportuno yse alivian el uso y desgaste físicos que producen deterioro en la salida impresa que se maneja con frecuencia.¿CUÁNTO TIEMPO SE ALMACENARÁ (O SE DEBE ALMACENAR) LA SALIDA? La salida impresa en papel se deterioracon rapidez a través del tiempo. La salida que se preserva en microformas o que se digitaliza en archivos no estan propensa a sucumbir a los disturbios ambientales como la iluminación, la humedad y el manejo humano.Pero si el hardware para acceder al material archivado es difícil de adquirir o se vuelve obsoleto, este método desalida puede volverse problemático.Tal vez una empresa esté sujeta a las leyes gubernamentales en los niveles local, estatal o federal, que dictencuánto tiempo se debe mantener guardada la salida. Mientras que la corporación esté dispuesta a mantener la sa-lida y ésta sea información de archivo no propietaria, se puede mantener en documentos Web como parte del si-tio Web de la organización. Las organizaciones pueden establecer sus propias políticas internas acerca de cuántotiempo se debe retener la salida.¿BAJO QUÉ LEYES ESPECIALES SE PRODUCE, ALMACENA Y DISTRIBUYE LA SALIDA? El gobierno se encarga deregular el formato apropiado para ciertos tipos de salida. Por ejemplo, en los Estados Unidos la declaracióndel salario y la retención de impuestos de un empleado, a lo cual se le conoce como formulario W-2, se debeimprimir; su formato final no puede ser una salida de pantalla o microforma. Cada empresa en cada país existedentro de un complejo distinto de leyes bajo las cuales produce la salida. Para tal efecto, la ley puede dictar latecnología apropiada para ciertas funciones.Sin embargo, gran parte de estas leyes dependen de la industria. Por ejemplo, en los Estados Unidos la ley federalrequiere que un banco de sangre regional mantenga un historial médico de un donador de sangre (así como su nombre)en archivo. No se especifica el formato exacto de la salida, pero el contenido está descrito en forma minuciosa.www.xlibros.com
CAPÍTULO 11 • DISEÑO DE UNA SALIDA EFECTIVA 339¿CUÁLES SON LOS COSTOS INICIALES Y CONTINUOS DEL MANTENIMIENTO Y LOS SUMINISTROS? Los costosiniciales relacionados con la compra o renta de equipo se deben considerar como otro factor más que participa enla elección de la tecnología de salida. La mayoría de los distribuidores le ayudarán a estimar los costos inicialesde comprar o rentar hardware de computadora, incluyendo el costo de las impresoras y pantallas, el costo delacceso a los proveedores de servicio en línea (acceso a Internet) o los costos de construir intranets y extranets.Sin embargo, muchos distribuidores no proveen información sobre cuánto cuesta mantener una impresora ohacer funcionar otras tecnologías. Por lo tanto, es responsabilidad del analista investigar los costos de operaciónde las distintas tecnologías de salida o de mantener un sitio Web corporativo a largo plazo.¿CUÁLES SON LOS REQUERIMIENTOS AMBIENTALES HUMANOS PARA LAS TECNOLOGÍAS DE SALIDA? Losanalistas necesitan incluir en sus decisiones sobre la salida los factores correspondientes a accesibilidad,absorción de ruido, temperatura controlada, espacio para el equipo, cableado y proximidad a los transmisoresWi-Fi o puntos de acceso o “puntos calientes”. Cuando los humanos interactúan con las tecnologías, losambientes específicos ayudan a los sistemas a operar con mayor efectividad y eficiencia. Los usuarios necesitanaccesibilidad y soporte para acceder a las páginas Web, así como a los demás tipos de salida.O P O R T U N I D A D D E C O N S U L T O R Í A 1 1 . 2Una vía correcta, una equivocada y una vía de metro“Hasta ahora todo está bien. Es cierto que hemos tenido algunasquejas, pero cualquier nuevo metro subterráneo las tiene. El ardidpublicitario del “viaje gratis” ayudó a atraer personas que nuncahubieran viajado en otras circunstancias. Creo que hay más personasinteresadas en viajar en el metro subterráneo de las que había antes”,dice Bart Rayl. “Lo que necesitamos es una idea precisa sobre elnúmero de pasajeros hasta ahora, para poder realizar algunos ajustesen nuestras decisiones sobre la tarifa y el itinerario de los trenes”.Rayl es gerente de operaciones para S.W.I.F.T, el metro subte-rráneo recién construido para Western Ipswich y Fremont Trans-port, el cual da servicio a una de las principales ciudades al norestede los Estados Unidos. Se encuentra hablando con Benton Turns-tile, quien se reporta a él como supervisor de operaciones deS.W.I.F.T. El sistema de metro subterráneo está en su primer mesde operación, en el que ofrece líneas limitadas. La gente de marke-ting ha estado regalando viajes gratis en el metro para aumentar laconciencia pública sobre S.W.I.F.T.“Creo que es una buena idea”, dice Turnstile. “No es sólo unesfuerzo simbólico. Les mostraremos que realmente estamos en elcarril correcto. Volveré pronto con usted para mostrarle la informa-ción sobre el número de pasajeros”, dice.Un mes después, Rayl y Turnstile se reúnen para comparar elnúmero de pasajeros proyectado con los nuevos datos. Turnstile pre-senta con orgullo a Rayl una pila de dos pulgadas de alto de impresio-nes de computadora. Rayl se ve un poco sorprendido, pero procede arepasar los documentos con Turnstile. “¿Qué tenemos aquí?” preguntaRay, pasando el dedo índice sobre la página superior de la pila.“Bueno,” dice Turnstile al tiempo que pone sus ojos en lasimpresiones, “es una lista de todos los boletos que se vendieron enlas máquinas computarizadas. Nos indica cuántos boletos se com-praron y qué tipo de boletos fueron. Los de Systems That Think,Inc. me dijeron que este informe sería muy útil para nosotros, aligual que para las personas de operaciones en Buffalo y Pittsburgh”,dice Turnstile, volteando rápidamente la siguiente página,.“Tal vez, pero recuerda que esos sistemas de metro subterrá-neo empezaron con un servicio realmente limitado. Nosotros somosmás grandes. ¿Y qué hay sobre las ventas de las tres casetas deboletos en la terminal de Main Street?”, pregunta Rayl.“Los empleados en la caseta pueden obtener información quesintetiza las ventas de boletos en pantalla cada vez que lo requieran,pero esa información no está incluida aquí. Recuerda que proyecta-mos que sólo el 10 por ciento de nuestras ventas serían de las case-tas, de todas formas. Sigamos con nuestra idea original y agreguemosesa información a las copias impresas”, sugiere Turnstile.Rayl responde: “Pero he estado observando a los pasajeros. Lamitad de ellos parecen tener miedo de las máquinas expendedoras deboletos. Otros empiezan a usarlas, se frustran al tratar de leer lasinstrucciones o no saben qué hacer con el boleto que sale y terminanen la caseta de boletos a punto de estallar de coraje. Además, nopueden entender la información de rutina que se publica en los quios-cos, pues está en forma de gráficos. Terminan preguntando a losempleados qué tren va para qué lado”. Rayl empuja los papeles quecontienen las ventas de boletos hacia un lado de la mesa de conferen-cias y dice: “No tengo mucha confianza en este informe. Siento comosi estuviéramos sentados aquí tratando de operar el sistema de metrosubterráneo más sofisticado de los Estados Unidos mirando fijamenteun túnel en vez de la información, como deberíamos. Creo que nece-sitamos pensar seriamente sobre cómo capturar la información de losviajes en tarjetas con cintas magnéticas como lo hace la Autoridad detránsito de la ciudad de Nueva York. Cada vez que uno inserta unatarjeta para viajar se almacena la información”.¿Cuáles son algunos de los problemas específicos con la salidaque los consultores de sistemas y Benton Turnstile dieron a BartRayl? Evalúe los medios que se están usando para la salida, asícomo la sincronización de su distribución. Comente sobre la salidaexterna que aparentemente reciben los usuarios de las máquinasexpendedoras de boletos. Sugiera algunos cambios en la salida paraayudar a Rayl a obtener la información que necesita para tomardecisiones sobre las tarifas y los itinerarios de los trenes, y paraayudar a los usuarios del sistema de metro subterráneo a obtener lainformación que necesitan. ¿Cuáles son algunas de las decisiones alas que se enfrentan las organizaciones como la Autoridad de trán-sito de Nueva York si recolectan y almacenan la entrada concer-niente a los destinos de un individuo cada vez que éste hace unviaje? ¿Qué cambios tendría que hacer S.W.I.F.T. en cuanto a susalida y sus boletos si adoptara esta tecnología?www.xlibros.com
340 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOLas impresoras requieren un entorno seco y frío para operar en forma apropiada. Las pantallas requierenespacio para instalarlas y verlas. La salida de audio y video requiere un entorno silencioso para poder escuchar;además sólo los empleados (o clientes) que la utilizan deben ser quienes puedan escuchar. Por ende, el analistano debe especificar una salida de audio para una situación de trabajo en la que haya muchos empleados o clientesinvolucrados en una variedad de tareas no relacionadas con la salida.Para poder establecer redes de área local inalámbricas, de manera que los usuarios puedan acceder a la Web sinnecesidad de cables, debe haber puntos de acceso Wi-Fi disponibles. Estos funcionan cuando las PC están a unoscuantos cientos de pies de los transmisores, pero pueden estar sujetos a interferencia debido a otros dispositivos.Algunas tecnologías de salida se valoran por ser discretas. Las bibliotecas, que hacen énfasis en mantenersilencioso el sitio de trabajo, utilizan mucho las pantallas para los documentos Web y demás información de basede datos en red, pero usan muy pocas impresoras.COMPRENDER CÓMO AFECTA LA PREDISPOSICIÓN EN LA SALIDA A LOS USUARIOSLa salida no es sólo un producto neutral que los encargados de tomar decisiones analizan para luego actuar conbase en ella. La salida afecta a los usuarios en muchas formas distintas. Los analistas de sistemas deben tenermucha creatividad y cautela al diseñar la salida para evitar las predisposiciones.Cómo reconocer la predisposición en la forma en que se utiliza la salidaUn error común es suponer que una vez que el analista de sistemas aprueba un proyecto de sistemas termina elimpacto que puede generar sobre éste. En realidad, la influencia del analista es de larga duración. La mayor partede la información en la que los miembros de la organización basan sus decisiones se determina con base en loque los analistas perciben como importante para la empresa.La predisposición está presente en todo lo que crean los humanos. No pretendemos con esto decir que la pre-disposición es mala, sino enfatizar que es inseparable de lo que nosotros producimos y, consecuentemente, de loque nuestro sistemas producen. Las preocupaciones de los analistas de sistemas son evitar predisponer la salida sinnecesidad y hacer que los usuarios tomen conciencia de las posibles predisposiciones en la salida que reciben.Las presentaciones de la salida se predisponen involuntariamente en tres formas principales:1. En el orden de la información.2. En el establecimiento de los límites aceptables.3. En la elección de las gráficas.CÓMO SE INTRODUCE LA PREDISPOSICIÓN AL ORDENAR LA INFORMACIÓN La predisposición se introduce a lasalida cuando el analista y los usuarios hacen elecciones acerca de cómo ordenar la información para un informe.Las formas comunes de ordenar información son por orden alfabético, por orden cronológico y por costo.La información que se presenta en orden alfabético puede enfatizar excesivamente los elementos que em-piezan con las letras A y B, ya que los usuarios tienden a poner más atención a la información que se presentaprimero. Por ejemplo, si los proveedores anteriores se listan por orden alfabético, las empresas como AardvarkPrinters, Advent Supplies y Barkley Office Equipment se muestran primero al gerente de compras. Cuando cier-tas aerolíneas crearon los sistemas de reservaciones SABRE y APOLLO, listaban sus propios vuelos primerohasta que las otras aerolíneas se quejaron de que había predisposición en este tipo de ordenamiento.CÓMO SE INTRODUCE LA PREDISPOSICIÓN AL ESTABLECER LÍMITES La segunda fuente importante depredisposición en la salida es la predefinición de límites para valores específicos en los informes. Muchosinformes se generan sólo por excepción, lo cual significa que cuando se establecen de antemano límites en losvalores, sólo se obtendrán como salida las excepciones a esos valores. Los informes por excepciones ayudan aque el encargado de tomar decisiones tome conciencia de las desviaciones de los valores satisfactorios.Por ejemplo, los límites que se establecen a un nivel demasiado bajo para los informes por excepciones pue-den predisponer la percepción del usuario. Una compañía de seguros que genere informes por excepciones entodas las cuentas con una semana de retraso en el pago establece un límite muy bajo en los pagos vencidos. Elencargado de tomar decisiones que reciba la salida se verá abrumado por “excepciones” que en realidad no sonmotivo de preocupación. El informe por excepción de pagos con una semana de retraso da a los usuarios unamala impresión de que hay muchas cuentas vencidas. Un límite más apropiado para generar un informe por ex-cepción sería incluir las cuentas con 30 o más días de retraso.CÓMO SE INTRODUCE LA PREDISPOSICIÓN A TRAVÉS DE GRÁFICAS La salida está sujeta a un tercer tipo depredisposición en la presentación: la elección del analista (o usuario) en cuanto a las gráficas para mostrar la salida.La predisposición puede ocurrir al seleccionar el tamaño, su color, la escala a utilizar e incluso el tipo de gráfica.El tamaño de la gráfica debe ser proporcional, de manera que el usuario no esté predispuesto en cuanto a la impor-tancia de las variables que se presentan. Por ejemplo, la figura 11.5 muestra una gráfica de columnas en el que se comparawww.xlibros.com
CAPÍTULO 11 • DISEÑO DE UNA SALIDA EFECTIVA 341Este diagrama nomuestra elpanorama real.Número dereservacionesno completadas4004104204304404502008 2009FIGURA 11.5Es muy probable que un gráficodesorientador predisponga alusuario.el número de reservaciones de hotel no completadas en el 2008 con las reservaciones de hotel no completadas en el 2009.Observe que el eje vertical está roto y parece ser que el número de reservaciones no completadas para el 2008 es dos ve-ces mayor que el número de reservaciones no completadas en el 2009, aunque en realidad ha aumentado sólo un poco.Cómo evitar la predisposición al diseñar la salidaLos analistas de sistemas pueden usar estrategias específicas para evitar predisponer la salida que ellos y otros diseñan:1. Estar consciente de las fuentes de predisposición.2. Crear un diseño interactivo de la salida durante la creación de prototipos, fase en la que se incluya a losusuarios y una variedad de sistemas configurados en forma distinta al momento de evaluar la apariencia delos documentos Web.3. Trabajar con los usuarios de manera que estén informados de las predisposiciones de la salida y puedanreconocer las implicaciones al personalizar sus pantallas.4. Crear una salida flexible que permita a los usuarios modificar límites y rangos.5. Capacitar a los usuarios para que se basen en varias salidas para realizar “pruebas de realidad” con la salidadel sistema.Todas estas estrategias (excepto la primera) se enfocan en la relación entre el analista del sistema y el usuario, y laforma en que esta relación se involucra con la salida. En primer lugar, los analistas de sistemas necesitan reconocerel impacto potencial de la salida y estar conscientes de las posibles formas en que se puede predisponer involunta-riamente la salida. Después, necesitan ser propositivos para ayudar a los usuarios a diseñar una salida con el menorgrado de predisposición, sin perder la capacidad de identificar esta.Cómo diseñar la salida impresaLa fuente de información que debemos incluir en los informes es el diccionario de datos, la compilación de loque vimos en el capítulo 8. Recuerde que el diccionario de datos incluye los nombres de los elementos de datos,así como la longitud de campo requerida para cada entrada.Los informes se clasifican en tres categorías: detallados, por excepciones y sintetizados. Los informes deta-llados imprimen una línea por cada registro en el archivo maestro. Se utilizan para enviar correspondencia a losclientes, enviar las calificaciones de los estudiantes, imprimir catálogos, etcétera. Las pantallas de consulta hansustituido a muchos informes.Los informes por excepciones imprimen una línea para todos los registros que coincidan con un conjunto de con-diciones, como cuáles serán las decoraciones de días festivos que tendrán un descuento un día después del día festivo,o cuáles estudiantes estarán en la lista de honor. Por lo general se utilizan para ayudar a los gerentes de operaciones yal personal de oficina a operar un negocio. Los informes sintetizados imprimen una línea para un grupo de registrosy se utilizan para tomar decisiones, como cuáles son los artículos que no se venden y cuáles se venden mucho.Lineamientos para el diseño de informes impresosLa figura 11.6 es un informe de salida previsto para los gerentes divisionales de un mayorista de alimentos queabastece a varias tiendas de abarrotes de franquicia. Nos enfocaremos en diversos aspectos del informe a medidaque examinemos herramientas, convenciones y atributos funcionales y de estilo de los informes de salida impresos.CONVENCIONES DE DISEÑO DE LOS INFORMES Las convenciones a seguir al momento de diseñar un formularioincluyen el tipo de datos (alfabético, especial o numérico) que aparecerá en cada posición, mostrar el tamaño delformulario que se está preparando y mostrar la forma de indicar que los datos continúan en formularios dispuestosen forma consecutiva. La mayoría del software de diseño de formularios que utilizan los analistas en la actualidadposee convenciones estandarizadas para diseñar formularios en pantalla. Además se incluyen interfaces familiarestipo “arrastrar y soltar” que nos permiten seleccionar atributos con el ratón, como un bloque de direcciones, parawww.xlibros.com
342 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOO P O R T U N I D A D D E C O N S U L T O R Í A 1 1 . 3¿Debería prohibirse esta gráfica?“Cielos, estoy contento de que los contrataran, muchachos. Seque a los Redwings les irá mejor la siguiente temporada debido a us-tedes. Mi trabajo será mucho más sencillo también”, dice Andy Skors,gerente de boletos para el equipo de hockey de Kitchener, Ontario, losKitchener Redwings. Andy ha estado trabajando con el equipo deanalistas de sistemas al que usted pertenece para analizar los requeri-mientos de sistemas para computarizar las ventas de boletos.Hay que recordar que la última vez que hablamos sobre elequipo de análisis de sistemas, que consistía de Hy Sticking (su lí-der), Rip Shinpadd, Fiona Wrink y usted, estaban discutiendo sobreagilizar el proyecto y establecer los objetivos de productividad delequipo (en “Cuidar los objetivos”, Oportunidad de consultoría 3.5).Andy está hablando con el equipo sobre lo que se debe incluiren la propuesta de sistemas para hacerla lo más convincente posiblepara la gerencia de los Redwings. “Estoy seguro de que les gustaráesta gráfica”, continúa Andy. “Es algo simple que dibujé después deque usted me hizo todas esas preguntas sobre las ventas anterioresde boletos, Rip”.Andy entrega la gráfica de barras a Rip, quien lo ve y dejaentrever una ligera sonrisa. “Ya que estás aquí con nosotros, Andy,¿por qué no lo explicas?”.Como un jugador que acaba de salir de la caja de castigos,Andy empieza a explicar la gráfica como si estuviera patinando conestilo y gracia. “Bueno, nuestras ventas de boletos llegaron a sumáximo histórico en 2007. La multitud estuvo realmente compla-cida ese año. Incluso podríamos haber vendido asientos en el mar-cador si me hubieran dejado. Por desgracia, las ventas de boletosllegaron a su mínimo histórico en 2009. Es decir, realmente fue undesastre. Los boletos se movían más lento que un glaciar. Tuve queconvencer a los jugadores para que regalaran boletos cuando hicie-ran apariciones en el centro comercial. Si dan un vistazo a esta ta-bla, se darán cuenta de lo que hablo”.“Pienso que al computarizar las ventas de boletos podernoselegir quiénes serán nuestros patrocinadores de la temporada. Tene-mos que averiguar quiénes son y recuperarlos, hacer que sigan connosotros. Eso sería una excelente meta a lograr”, concluye Andy.Después de la agitada presentación de Andy, Hy mira como sipensara que el periodo de 20 minutos nunca acabaría. Al entendersu señal, Fiona dice: “Gracias por la información, Andy. Trabajare-mos para incluirla en el informe de alguna forma”.Mientras Fiona y Rip salen de la sala con Andy, Hy se da cuentade que ya no queda nadie en la banca, por lo que le pide a usted, elcuarto miembro del equipo, que guíe a Andy con su gráfica de ba-rras; haga una lista de los problemas que vea en él. A Hy también legustaría que usted hiciera bosquejos de algunas formas alternativasde graficar los datos sobre las ventas de boletos, de manera que sepueda incluir una gráfica correcta y persuasiva sobre las ventas deboletos en la propuesta de sistemas. Dibuje dos alternativas.2009200820052006200711,000 12,000 13,000 14,000 15,0005,000 6,000 7,000 8,000 9,000 10,000¿Qué tiene demalo estegráfico?20072006200520082009Mejor añoPeor año15,64314,88014,10013,25412,6907,5056,8087,0896,7356,351Estado AñoPromedioboletosvendidospor juegoBoletos detemporadavendidospor temporadaFIGURA 11.C1Un gráfico dibujado en forma incorrecta.www.xlibros.com
CAPÍTULO 11 • DISEÑO DE UNA SALIDA EFECTIVA 343C 5 1 1 2 F r o n t R o y a l , V A 2 0 2 3 5 1 1 2 6 5 3 . 9 3 2 1 . 8 5 4 . 0 2 , 1 4 4 1 . 7S 4 3 1 1 R o c k v i l l e , M D 4 0 4 1 5 2 1 4 4 6 4 . 2 7 0 0 . 3 4 3 . 1 2 , 0 6 2 1 . 4R 3 0 2 1 M i d d l e b u r g , V A 2 0 2 2 5 3 9 5 4 4 . 2 9 2 1 . 9 4 4 . 0 2 , 0 5 7 2 . 2S 5 0 2 1 C u l p e p e r , V A 2 0 2 6 5 4 2 1 9 8 3 . 7 8 3 1 . 5 1 0 4 . 4 2 , 0 0 5 0 . 9R 2 8 2 0 W a l d o r f , M D 4 0 4 2 5 5 7 2 3 4 . 6 9 1 1 . 2 2 3 . 3 1 , 9 0 3 2 . 6C 4 4 2 4 F a i r f a x - L e e H g w y 2 0 2 2 5 6 1 3 1 5 4 . 1 6 2 1 . 3 5 4 . 0 1 , 8 6 9 1 . 4C 4 4 2 3 B a i l e y s X - R o a d s 2 0 2 2 5 7 9 8 5 4 . 7 0 2 1 . 7 5 4 . 6 1 , 7 2 7 1 . 8S 3 8 2 1 H e r n d o n , V A 2 0 2 3 5 8 2 2 1 7 3 . 3 5 4 1 . 7 9 4 . 2 1 , 7 0 3 0 . 8C 7 1 2 6 F r e d e r i c k , M D 3 0 3 2 5 9 1 2 5 5 4 . 0 4 2 1 . 6 5 4 . 3 1 , 6 1 5 1 . 3S 8 0 2 9 C e n t r e v i l l e , V A 2 0 2 7 6 0 1 7 5 7 3 . 7 3 3 1 . 9 8 4 . 7 1 , 5 9 3 0 . 9R 5 0 2 9 M i n n i e v i l l e , V A 2 0 3 4 6 1 3 4 2 5 . 2 8 1 3 . 3 1 4 . 0 1 , 5 7 2 4 . 7S 7 5 2 0 M o u n t V e r n o n 2 0 2 4 6 2 9 0 5 5 . 2 2 2 1 . 7 5 5 . 2 1 , 5 5 8 1 . 7C 4 7 1 2 D . C . M S t r e e t 4 0 4 4 6 3 2 3 5 1 0 4 . 3 5 4 1 . 8 1 3 5 . 5 1 , 4 8 9 0 . 6S 4 7 1 6 A n n a n d a l e 2 0 2 5 6 4 1 2 6 6 4 . 5 2 0 0 . 1 4 3 . 5 1 , 4 5 7 1 . 2S 7 9 2 2 V i e n n a , V A 2 0 2 5 6 5 1 7 7 9 4 . 8 6 2 1 . 2 9 5 . 3 1 , 4 4 7 0 . 8R 4 4 9 1 G r e a t F a l l s 2 0 2 4 6 6 8 6 4 4 . 3 9 2 1 . 9 4 4 . 7 1 , 3 6 4 1 . 6R 3 9 2 6 H a r p e r ’ s F e r r y 3 0 3 3 6 7 6 8 3 4 . 8 0 0 0 . 3 2 3 . 1 1 , 3 2 5 1 . 9C 2 4 2 2 F a l l s C h u r c h 2 0 2 7 6 8 1 4 4 6 4 . 0 6 2 1 . 4 7 4 . 6 1 , 3 2 2 . 9R 3 0 2 4 C l i f t o n , V A 2 0 2 3 6 9 5 3 3 5 . 1 7 1 1 . 6 2 4 . 3 1 , 2 7 3 2 . 4C 4 5 1 1 S i l v e r S p r i n g , M D 2 0 4 2 7 0 1 2 1 5 4 . 0 6 1 1 . 2 5 4 . 3 1 , 2 3 7 1 . 0R 5 1 2 0 O l n e y , M D 3 0 3 1 7 1 4 3 2 4 . 6 0 1 . 2 . 2 4 . 0 1 , 2 1 7 2 . 8C 4 5 2 7 D . C C o n n e c t i c u t A v e 4 0 4 5 7 2 1 1 0 5 4 . 2 8 0 0 . 2 4 3 . 4 1 , 2 0 0 1 . 1C 4 5 2 6 P e n n s y l v a n i a A v e 4 0 4 2 7 3 1 3 4 6 4 . 5 5 0 0 . 2 5 4 . 0 1 , 0 7 3 0 . 8S 2 9 2 3 M a n a s s a s 2 0 2 5 7 4 1 9 8 7 3 . 5 4 0 0 . 1 6 3 . 1 1 , 0 5 7 0 . 5T i e n d a s e n l a c i u d a d 6 , 0 2 5 2 5 5 4 . 2 3 6 7 1 . 1 1 9 0 3 . 2 6 9 , 9 8 7 1 . 2T i e n d a s e n l o s s u b u r b i o s 3 , 4 0 2 1 7 1 5 . 0 3 5 4 1 . 6 1 3 3 3 . 9 3 5 , 0 2 0 1 . 0T i e n d a s r u r a l e s 2 , 0 1 8 9 2 4 . 5 6 2 7 1 . 3 4 7 2 . 3 4 3 , 2 2 3 2 . 1T o t a l ( t o d a s l a s t i e n d a s e n l a r e g i ó n ) 1 1 , 4 4 5 5 1 8 4 . 5 2 1 4 8 1 . 3 3 7 0 3 . 2 1 4 8 , 2 3 0 1 . 3I n f o r m a c i ó n d e t i e n d a s d e f r a n q u i c i aC l a s i f i c a d a p o r l a s g a n a n c i a s e n d ó l a r e sP a r a e l m e s q u e t e r m i n a e n M M / D D / A A A AD V e n t a s e nm i l e s d ed ó l a r e sG a n a n c i ab r u t a e nm i l e sO t r o si n g r e s o se n m i l e sG a s t o sa s i g n a d o se n m i l e sII n g r e s o se nd ó l a r e sF . N Ú M . N o m b r e s d e l a s t i e n d a s V D i s t R a n g o % % % %P á g i n a 2FIGURA 11.6Un informe de salida impreso para los gerentesdivisionales de un mayorista de alimentos.después soltarlo en la pantalla donde deseamos colocarlo en el formulario. Es muy común utilizar WYSIWYG (loque se ve es lo que se obtiene), por lo que el diseño de formularios es un ejercicio muy visual.La información constante es información que permanece igual cada vez que se imprime el informe. El títulodel informe y todos los encabezados de las columnas se escriben como información constante. La informaciónvariable es información que puede variar cada vez que se imprime el informe. En nuestro ejemplo cambian lascifras de ventas en miles de dólares; por ende, se indican como información variable.CALIDAD DE PAPEL, TIPO Y TAMAÑO La salida se puede imprimir en innumerables tipos de papel. Por lo general,la restricción primordial es el costo. Un ejemplo es el uso de papel de seguridad para los cheques y los sobres delos cheques, así como para los documentos que deben portar sellos oficiales inalterables u hologramas, como lospasaportes.Los formularios pre-impresos pueden transmitir con facilidad una imagen corporativa distintiva mediante eluso de los colores, logotipos y otros elementos de diseño relacionados con la empresa. El uso de formas, coloresy distribuciones innovadoras también es una forma efectiva de llamar la atención de los usuarios para el informeque contiene el formulario impreso.CONSIDERACIONES DE DISEÑO Al diseñar el informe impreso, el analista de sistemas trabaja con los usuariospara incorporar las consideraciones funcionales y estilísticas o estéticas, de manera que el informe provea alusuario la información necesaria en un formato legible y agradable. Como la función y la forma se refuerzan unaa otra, no hay que hacer énfasis en una a expensas de la otra.Atributos funcionales Los atributos funcionales de un informe impreso incluyen: 1) el encabezado o título delinforme, 2) el número de página, 3) la fecha de preparación, 4) los encabezados de columnas, 5) el agrupamientode los elementos de datos relacionados y 6) el uso de interrupciones de control. Cada uno de estos atributos sirveun propósito distintivo para el usuario.Hay varias consideraciones estilísticas o estéticas que el analista de sistemas debe observar al diseñar un in-forme impreso. Si la salida impresa es poco atractiva y difícil de leer, no se utilizará en forma efectiva o tal vezno se utilice para nada. El resultado es la desinformación de los encargados de tomar decisiones y un desperdiciode los recursos de la organización.www.xlibros.com
344 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOLos informes impresos deben estar organizados en consideración del fluir de la vista. En esta cultura, esosignifica que el informe se debe leer de arriba hacia abajo y de izquierda a derecha. Los elementos de datos rela-cionados se podrían agrupar entre sí. En una sección posterior de este capítulo veremos la estética sobre el diseñode sitios y páginas Web.CÓMO DISEÑAR SALIDA PARA PANTALLASEn el capítulo 12 veremos cómo diseñar pantallas para entrada humana o de computadora; aquí se aplicanlos mismos lineamientos para diseñar la salida, aunque el contenido varía. Cabe mencionar que la salida paralas pantallas difiere de la salida impresa en varios puntos. Es efímera (es decir, una pantalla no es perma-nente como las impresiones), puede estar orientada de manera más específica al usuario, está disponible enun horario más flexible, no es portátil de la misma forma y algunas veces se puede modificar a través de lainteracción directa.Además, hay que instruir a los usuarios en cuanto a las teclas que deben oprimir, los vínculos en los que de-ben hacer clic o cómo desplazarse cuando quieren continuar leyendo pantallas adicionales, cuando desean sabercómo terminar la pantalla y cuando quieren saber cómo interactuar con la pantalla (si es posible). El acceso delos usuarios a las pantallas se puede controlar mediante una contraseña, mientras que la distribución de la salidaimpresa se controla en base a otros medios.Lineamientos para el diseño de pantallasCuatro lineamientos facilitan el diseño de pantallas:1. Mantenga la pantalla simplificada.2. Mantenga la presentación consistente.3. Facilite el movimiento del usuario entre la salida que se muestra en la pantalla.4. Cree una pantalla atractiva y agradable.Al igual que con la salida impresa, las buenas pantallas no se crean en forma aislada. Los analistas de sistemasnecesitan la retroalimentación de los usuarios para diseñar pantallas que valgan la pena. Una vez aprobada por losusuarios después de varios prototipos y refinaciones, se puede finalizar la distribución de la pantalla.En la figura 11.7 se muestra la salida producida desde la pantalla de diseño. Cabe mencionar que no estáatestada de información, e incluso así proporciona un resumen básico del estado de envío. La pantalla orienta alos usuarios en cuanto a lo que están viendo mediante el uso de un encabezado. Las instrucciones en la parte in-Vendedor Pedido # Fecha del pedido Estado del pedidoAnimals Unlimited 933401 09/05/2009 Se envió el 09/29934567 09/11/2009 Se envió el 09/21934613 09/13/2009 Se envió el 09/21934691 09/14/2009 Se envió el 09/21Bear Bizarre 933603 09/02/2009 Envío parcial933668 09/08/2009 Programado para el 10/03934552 09/18/2009 Programado para el 10/03934683 09/18/2009 Se envió el 09/28Cuddles Co. 933414 09/12/2009 Se envió el 09/18933422 09/14/2009 Se envió el 09/21934339 09/16/2009 Se envió el 09/26934387 09/18/2009 Se envió el 09/21934476 09/25/2009 Pedido pendienteStuffed Stuff 934341 09/14/2009 Se envió el 09/26934591 09/18/2009 Envío parcial934633 09/26/2009 Pedido pendiente934664 09/29/2009 Envío parcialEstado de pedidos de New ZooOprima cualquier tecla para ver el resto de la lista; ESC para finalizar; ? para ayudaPara obtener más detalle, coloque el cursor sobre el número de pedido y oprima Intro.FIGURA 11.7La pantalla de salida de New Zooestá ordenada y orienta bien a losusuarios.www.xlibros.com
CAPÍTULO 11 • DISEÑO DE UNA SALIDA EFECTIVA 345Pedido # Vendedor Fecha del pedido Estado del pedido933603 Bear Bizarre 09/02/2008 Envío parcial1001 Karhu LaneBern, Virginia 22024Oprima cualquier tecla para ver el resto de la lista; ESC para finalizar; ? para ayudaUnidades Paq. Descripción Precio Monto Estado detallado12 Each Floppy Bears 20.00 240.00 Pedido pendiente vence el 10/156 Each Growlers 25.00 150.00 Pedido pendiente vence el 10/152 Each Special Edition 70.00 140.00 Se envió el 09/021 Box Celebrity Mix 150.00 150.00 Se envió el 09/0212 Each Santa Bears 10.00 120.00 Pedido pendiente vence el 10/30800.00Contacto Saldo de la cuenta Clasificación de crédito Último pedido EnviadoSrita. Ursula Major 0.00 Excelente 08/21/2008 A tiempo703-484-2327FIGURA 11.8Si los usuarios desean más detallesrelacionados con el estado deenvío, pueden pedir una pantallaseparada.ferior de la pantalla proveen a los usuarios varias opciones, incluyendo continuar con la pantalla actual, terminarcon la pantalla, obtener ayuda u presentar más detalle. Esta pantalla provee contexto para los usuarios que tratande completar una tarea, como verificar el estado de un pedido.Las pantallas de salida de una aplicación deben mostrar información de manera consistente, de una páginaa otra. La figura 11.8 muestra la pantalla que se produce cuando el usuario coloca el cursor sobre el número depedido para un vendedor específico. La nueva pantalla presenta más detalles sobre Bear Bizarre. En el cuerpode la pantalla, el usuario puede ver el número de pedido del vendedor, la dirección completa, la fecha del pedidoy el estado. Además se proporciona un desglose detallado del envío y un estado detallado de cada parte del envío.Se provee un nombre y número telefónico de contacto, junto con el saldo de la cuenta, la clasificación de cré-dito y el historial de envíos. Cabe mencionar que la parte inferior de la pantalla aconseja al usuario sobre ciertasopciones, incluir más detalles, finalizar la pantalla u obtener ayuda. Los usuarios reciben el control sobre lo quepodrían hacer después de ver la pantalla.En vez de amontonar toda la información de un vendedor en una sola página, el analista ha hecho posibleque el usuario pueda ver la información sobre un vendedor específico en caso de que surja un problema o unaduda. Por ejemplo, si el resumen indica que se envió sólo una parte de un pedido, el usuario puede verificar másdetalles del mismo mediante una llamada a una pantalla detallada del vendedor, para después proceder con laacción apropiada.Uso de salida gráfica en el diseño de pantallasLa salida gráfica puede ser poderosa. Es mucho más fácil identificar una tendencia u observar un patrón cuandose muestra la gráfica apropiada. La mayoría de las personas identifican mejor las diferencias en las gráficas queen las tablas. Es importante colaborar con los usuarios para elegir el estilo correcto de gráfico para comunicar loque deseamos.Al igual que con la presentación de la salida en formato tabular, la salida gráfica necesita ser precisa y fácilde comprender y usar, si deseamos que sea efectiva para comunicar la información a los usuarios. Los encarga-dos de tomar decisiones que usan las gráficas necesitan conocer las suposiciones (predisposiciones) bajo las quese construyen, de manera que puedan realizar los ajustes o compensaciones necesarios.Al diseñar la salida gráfica, el analista de sistemas y cualquier usuario involucrado en la creación de prototiposde diseño deben determinar: 1) el propósito del gráfico, 2) el tipo de datos que hay que mostrar, 3) su audiencia y4) los efectos sobre la audiencia de distintos tipos de salida gráfica. En el caso de un sistema de soporte de decisio-nes, el propósito de una pantalla gráfica es apoyar cualquiera de las tres fases de solución de problemas a las que seenfrenta un usuario: inteligencia, diseño o elección. En la figura 11.9 se muestra un ejemplo de DSS de planeaciónde los elementos de la Policía Estatal de Nebraska. En este caso, los tiempos actuales de respuesta, los tiempos pro-nosticados de respuesta y los requerimientos mínimos se grafican como barras con distintos sombreados.www.xlibros.com
346 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOTableros de controlLos encargados de tomar decisiones necesitan una salida que les ayude a tomar decisiones con efectividad y rapi-dez. Es muy conveniente para los ejecutivos y demás personas encargadas de tomar decisiones que toda la infor-mación necesaria para tomar las decisiones aparezca en pantallas frente a ellos. Cuando recibe un informe escrito,el encargado de tomar decisiones preferiría que toda la información estuviera contenida dentro de ese informe, envez de tener que buscar información en otros lugares. El mismo principio se aplica al diseño de pantallas.Un tablero de control, similar al tablero de un automóvil, tiene muchos medidores distintos. Cada medidorpuede mostrar una gráfica (algo así como la velocidad en millas o kilómetros por hora), un indicador de falla(como un indicador que muestra que el sistema de freno automático no funciona) o incluso texto (como un odó-metro que simplemente cuenta los kilómetros recorridos).A un ejecutivo le puede parecer muy útil el tablero de control al tomar decisiones, pero sólo si su diseño esapropiado. El tablero de control de la figura 11.10 muestra que se puede incluir una cantidad considerable de in-formación en una sola pantalla.FIGURA 11.10Este tablero de control presentavarios tipos de indicadores dedesempeño para ayudar a tomardecisiones.50ActualTiempo(en minutos)Tiempo de respuesta promedio por área de tropaPolicía Estatal de NebraskaSede A B C D E EstadoMínimoPronosticadoElementos en el área de tropa454035302520151050FIGURA 11.9Una pantalla de gráfico de barraspara inspeccionar el tiempo derespuesta de la tropa en pantalla.www.xlibros.com
CAPÍTULO 11 • DISEÑO DE UNA SALIDA EFECTIVA 347Los tableros de control se enfocan en comunicar las mediciones al usuario. Un ejecutivo utiliza un tablerode control para revisar las medidas de desempeño y tomar acción si la información en la pantalla lo requiere. Heaquí algunas reglas empíricas que puede utilizar para que el tablero de control que usted diseñe sea más atractivoy efectivo:1. Asegúrese que los datos tengan contexto. Si diseña una pantalla que indique que las ventas del mes pasadofueron de $851,235, ¿qué significa eso? ¿Están las ventas por encima o por debajo del promedio?2. Presente la información en forma apropiadamente sintética y precisa. Su pantalla se verá atestada si muestralas ventas del mes pasado como $852,235.32, en vez de indicar en el título el uso de miles de dólares ymostrar sólo 851.3. Seleccione las medidas de desempeño apropiadas para la pantalla. Por ejemplo, trazar la diferencia entre lasventas actuales y las esperadas en un gráfico de desviación es mucho más significativo que usar un gráficode línea para trazar las ventas actuales y esperadas.4. Presente los datos en forma justa. Si hay predisposición en el tablero de control, dificultará las buenasdecisiones, en lugar de sustentarlas.5. Seleccione el estilo correcto de gráfica para la pantalla. Es importante usar la gráfica adecuada. Aunque unagráfica de pastel puede ser excelente para persuadir a alguien, tal vez no sea la mejor elección para que unejecutivo supervise el desempeño de las oficinas regionales, por ejemplo.6. Use medios de visualización bien diseñados. Incluso si selecciona el mejor tipo de gráfica, de todasformas necesitará dibujar, ajustar tamaño y color, y etiquetar la gráfica de manera significativa yagradable.7. Limite la variedad de tipos de elementos. Mantenga el menor número de estilos posibles de gráficos,diagramas y tablas, de manera que la información se pueda comunicar con rapidez y precisión.8. Resalte los datos importantes. Use colores brillantes y fuentes en negrita sólo para los datos importantes.Puede resaltar las medidas clave de desempeño o las excepciones importantes que estén ocurriendo, pero noambas cosas. Seleccione qué desea enfatizar.9. Ordene los datos en grupos representativos. Las medidas de desempeño casi siempre se asocian con otrasmedidas de desempeño debido a los datos mostrados o el tipo de gráfico. Aprenda cómo agrupar loselementos asociados.10. Mantenga la pantalla actual ordenada. Evite las fotografías, los logotipos ornamentados o los temas quepuedan distraer a los usuarios de los datos.11. Mantenga todo el tablero de control en una sola pantalla. Todas las medidas de desempeño deben estar enla misma pantalla. Si se ve obligado a cambiar pantallas, un usuario no podrá ver dos medidas relevantesa la vez.12. Permita cierta flexibilidad. Si un ejecutivo desea un gráfico o diagrama distinto, considere reemplazarlo. Esconveniente crear un prototipo del tablero de control y refinarlo con base en la retroalimentación del usuario.A menudo los encargados de tomar decisiones saben más al tratarse de obtener la información correcta en laforma más apropiada para su estilo de decisión.Widgets y gadgets: modificación de la metáfora del escritorioLos nuevos escritorios diseñados por los usuarios están relacionados con los tableros de control. Los diseñadoresde sistemas que desarrollan software para computadoras personales deberían estar al tanto de una tendencia paraanimar a los usuarios a personalizar sus escritorios con widgets y gadgets. Estos elementos son pequeños progra-mas, por lo general escritos en JavaScript y VBScript, que residen en una barra lateral unida a un navegador oprograma, o en una capa especial en el mismo escritorio.Los Widgets (como los denomina Yahoo!), los Dashboard Widgets (como los denomina Apple) y los Gad-gets (como los denominan Google y Microsoft) pueden ser cualquier tipo de programa que sea útil para alguienque interactúe con una computadora. Algunos ejemplos de widgets populares de productividad son los relojes,calculadoras, asistentes de sitios favoritos, traductores, motores de búsqueda, fácil acceso a las herramientas, pa-neles de inicio rápido y las notas adhesivas.Las cintas de cotizaciones de la bolsa, los informes meteorológicos y las fuentes RSS también son útileswidgets. Los gadgets permiten a los usuarios rastrar paquetes y verificar horarios. El usuario puede poner tam-bién juegos, podcasts de música y hobbies en su escritorio. Los widgets y gadgets poseen naturalezas duales, casiparadójicas. Permiten a los usuarios contribuir al diseño de su propio escritorio, y los diseñadores observadorespueden aprender mucho acerca de lo que prefieren los usuarios cuando estudian los escritorios diseñados porusuarios. Pero los widgets y gadgets también pueden distraer a las personas de las tareas aceptadas por el sis-tema. Los diseñadores necesitan trabajar con los usuarios para apoyarlos de manera que puedan lograr un equili-brio. Una posibilidad es la de agregar medidas de desempeño específicas para cada usuario, así como widgets ygadgets que sean útiles para los encargados de tomar decisiones.www.xlibros.com
348 PARTE IV • LOS FUNDAMENTOS DEL DISEÑODISEÑO DE UN SITIO WEBAl diseñar un sitio Web podemos pedir prestados algunos de los principios de diseño provenientes del diseñode pantallas. No obstante, cabe mencionar que la palabra clave aquí es sitio. Los primeros documentos que semostraron en Internet mediante el protocolo http se llamaban páginas iniciales, pero muy pronto se hizo evidenteque las empresas, universidades, gobiernos y personas no iban a mostrar sólo una página. El término sitio Webreemplazó al de página de inicio para indicar que había que organizar, coordinar, diseñar, desarrollar y mantenerla colección de páginas en un proceso ordenado.La impresión es un medio altamente controlable, por lo que el analista puede anticipar con precisión la apa-riencia que tendrá la salida. Las pantallas GUI y basadas en carácter (CHUI, o interfaz de usuario basada en ca-racteres) también están muy controladas. Sin embargo, la Web es un entorno con menor control para la salida.Los distintos navegadores muestran las imágenes en forma diferente; la resolución de la pantalla provoca unfuerte impacto sobre la apariencia visual de un sitio Web. Las resoluciones estándar son de 1024  768 píxeles ode 1600  1200 píxeles. Esta cuestión se complica incluso más debido al uso de dispositivos portátiles, como losteléfonos móviles con capacidades de navegación en Web. La complejidad aumenta cuando nos damos cuenta deque cada persona puede configurar un navegador para usar distintas fuentes y tal vez deshabilite el uso de Java-Script, cookies y demás elementos de programación. Los analistas y los usuarios se enfrentan a muchas decisio-nes al desarrollar un sitio Web.Además de los elementos generales de diseño que vimos antes en este capítulo, hay lineamientos específicosapropiados para el diseño de sitios Web de calidad profesional. En la figura 11.11 se definen los términos Web.Lineamientos generales para diseñar sitios WebHay muchas herramientas, así como ejemplos que pueden guiarlo al diseñar sitios Web.USE HERRAMIENTAS PROFESIONALES Use un software conocido como editor Web; por ejemplo, AdobeDreamweaver o Microsoft Expression Web. Estas herramientas definitivamente valen lo que cuestan. Usted serámás creativo y terminará el sitio Web con mucha más rapidez que si trabajara directamente con HTML (lenguajede marcado de hipertexto).O P O R T U N I D A D D E C O N S U L T O R Í A 1 1 . 4¿Es tu trabajo aburrido?“Quiero todo lo que pueda abarcar y entre más comprimida estéla información, mejor. Olvide eso que escuchó acerca de la sobrecargade información; no es mi caso. Lo quiero todo y no en un montón deinformes bonitos de media hoja. Lo quiero todo junto, empaquetadoen una hoja que pueda llevar a una reunión en caso de que necesitebuscar algo. Y lo necesito cada semana”, solicita Stephen Links, vice-presidente de una extensa empresa familiar de salchichas.Durante una entrevista, Links ha estado interrogando con se-veridad a Paul Plishka, quien forma parte del equipo de análisis desistemas que está ocupado con el diseño de un sistema de informa-ción para Links Meats. Aunque Paul está renuente a lo que Links leha pedido, procede a diseñar un informe impreso que incluya todoslos elementos importantes que ha establecido el equipo durante lafase de análisis.Sin embargo, al entregar a Stephen el prototipo del nuevo re-porte diseñado con base en sus especificaciones, parece haber uncambio de opinión. Links dice en términos nada inciertos que nopuede encontrar lo que necesita.“Eso se ve muy mal. Parecen recortes. Mi niño que está enpreescolar puede hacer mejores informes con sus crayones. Miranada más. Está todo revuelto. No puedo encontrar nada. ¿Dóndeestá el resumen del número de artículos de res que se vendieron encada punto de venta?, ¿dónde el volumen total de artículos vendidospara todos los puntos de venta?, ¿qué hay acerca de la informaciónen nuestra propia tienda del centro?”, dice Links mientras recorre elinforme.Sin duda hay que rediseñar el informe. Diseñe un informe(o informes) que se adapte mejor a las necesidades de StephenLinks. ¿Qué método puede adoptar el analista para sugerir más in-formes con un formato menos atestado? Comente sobre la dificul-tad de implementar sugerencias de los usuarios que vayan en contrade su capacitación sobre diseño. ¿Cuáles son los conflictos involu-crados (en relación con la sobrecarga de información) en la genera-ción de numerosos informes, en comparación con la generación deun informe extenso que contenga toda la información que deseaStephen? Idee una heurística para la visualización de la informaciónen un solo informe, en comparación con la generación de varios.Considere defender una solución basada en Web o en tablero decontrol que permita hipervínculos a toda la información que deseaStephen. ¿Qué tan viable sería eso?www.xlibros.com
CAPÍTULO 11 • DISEÑO DE UNA SALIDA EFECTIVA 349Término Web SignificadoAjaxCSSDHTMLGIFJavaJPEGHTMLhttp://complementoso plug-insURLVB .NETWebmasterWMPUn método que utiliza JavaScript y XML para modificar páginas Web en forma dinámica, sin mostrar unanueva página, mediante la obtención de pequeñas cantidades de datos del servidor.Hojas de estilo en cascada, un conjunto de estilos que controlan el formato de una página Web. Los estilos CSS se puedenalmacenar en un archivo y usar para dar formato a varias páginas Web, o se pueden definir dentro de una página Web.HTML dinámico, una forma de combinar JavaScript y tal vez las hojas de estilo en cascada para hacer quela página Web cambie con base en las acciones del usuario.Formato de intercambio de gráficos, un formato popular de imágenes comprimidas que se adapta muy bien al material gráfico.Un lenguaje orientado a objetos que permite ejecutar aplicaciones dinámicas en Internet. Los que no sonprogramadores pueden usar paquetes de software tales como Visual Café para Java de Symantec.Grupo unido de expertos en fotografía, el acrónimo para un popular formato de imágenes comprimidas que seadapta muy bien a las fotografías; el diseñador puede ajustar la calidad de estas fotografías.Lenguaje de marcado de hipertexto, el lenguaje detrás de la apariencia de los documentos en Web. En realidad esun conjunto de convenciones que marcan las porciones de un documento para indicarle al navegador qué formatodistintivo debe aparecer en cada porción de una página.Protocolo de transferencia de hipertexto, se utiliza para mover páginas Web entre distintas computadoras; porejemplo, desde un sitio Web en una computadora que esté en otro país, hasta su computadora personal.PHP Un lenguaje de programación de código fuente abierto, que a menudo se utiliza con MySQL, un sistema de administraciónde bases de datos.Software adicional (a menudo desarrollado por un tercero) que se puede utilizar con otro programa; por ejemplo,Real Player de RealNetworks o Macromedia Flash se utilizan como complementos en los navegadores Web parareproducir audio o video de flujo continuo y ver animaciones basadas en vectores.Localizador uniforme de recursos, la dirección de un documento o programa en Internet. Las extensiones conocidasson .com para comercios, .edu para instituciones educativas, .gov o .gob para instituciones gubernamentales, .orgpara organizaciones, etcétera.Visual Basic .NET, un entorno de programación de Microsoft.La persona responsable de mantener el sitio Web.Windows media photo, una alternativa a JPEG desarrollada por Microsoft.FAQ Preguntas frecuentes. Con frecuencia los sitios Web tienen una página dedicada a estas preguntas frecuentes, paraque la fuerza de ventas de la empresa o el equipo de soporte técnico no se vean inundados con las mismaspreguntas una y otra vez; además los usuarios pueden tener acceso a las respuestas las 24 horas del día.FTP Protocolo de transferencia de archivos, en la actualidad es la forma más común de mover archivos entre distintos sistemascomputarizados.FIGURA 11.11Términos del vocabulario Web.ESTUDIE OTROS SITIOS WEB Analice los sitios Web que usted y otros usuarios piensen que son interesantes.Analice los elementos de diseño que utilicen y vea cómo funcionan; después trate de emular lo que ve mediantela creación de páginas de prototipo (no es ético ni legal cortar y pegar imágenes o código, pero de todas formaspuede aprender algo de los otros sitios).Firefox, que forma parte del movimiento de software de código fuente abierto, es un útil navegador para es-tudiar otros sitios Web. Tiene varias extensiones creadas por terceros desarrolladores, las cuales están disponiblescomo descargas gratuitas. Ejecute Firefox, haga clic en “Herramientas/Complementos” y después en “Examinartodos los complementos”. Hay páginas de complementos y extensiones; una, llamada Web Developer, es muyútil para los diseñadores y webmasters, ya que permite al analista delinear tablas y estilos, además de ver Java-Script y cookies; provee información además de muchos otros útiles elementos a escoger. Palette Grabber es otraextensión que permite a los desarrolladores Web ver una pantalla de códigos de color con sólo elegir un coloren un sitio Web. También hay herramientas para trabajar con XML. La figura 11.12 es un ejemplo de la barra deherramientas Web Developer que se utiliza para resaltar las celdas de las tablas. Observe el borde rojo alrededorde cada celda individual.www.xlibros.com
350 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOUSE LOS RECURSOS QUE OFRECE LA WEB Analice los sitios Web que ofrecen sugerencias sobre diseño. Uno deellos es useit.com.EXAMINE LOS SITIOS WEB DE DISEÑADORES PROFESIONALES Mientras analiza páginas diseñadas porprofesionales pregúntese: “¿Qué es lo que funciona? ¿Qué no funciona? ¿En qué formas pueden los usuariosinteractuar con el sitio?” Por ejemplo, ¿tiene el sitio vínculos activos a direcciones de correo electrónico,formularios interactivos que se pueden llenar, encuestas para el consumidor, juegos, cuestionarios, salas de chat,etcétera? ¿Qué hay sobre los esquemas de color y las metáforas omnipresentes?USE LAS HERRAMIENTAS QUE APRENDIÓ La figura 11.13 provee un formulario que algunos diseñadores Webhan usado con éxito para evaluar las páginas Web en forma sistemática. Tal vez quiera usar este formulario paraFIGURA 11.12Un desarrollador Web puededelinear las celdas de las tablas aldiseñar una página Web, como semuestra en este ejemplo.Crítica de sitio WebNombre del analistaURL visitadoHora de visita:Fecha de visita:DISEÑONecesitamejorar ExcelenteApariencia en generalUso de gráficosUso de colorUso de sonido/video (multimedia)Uso de nueva tecnología y productosContenidoCapacidad de navegaciónAdministración del sitio y comunicacionesCOMENTARIOSCONTENIDO E INTERACTIVIDADPUNTUACIÓN1111111155555444443333322222555444333222/40FIGURA 11.13Un formulario de evaluación desitios Web.www.xlibros.com
CAPÍTULO 11 • DISEÑO DE UNA SALIDA EFECTIVA 351que le ayude a comparar y contrastar todos los sitios Web que visitará a medida que aprende sobre el diseño depáginas Web.CONSULTE ALGUNOS LIBROS Algo que puede aumentar su experiencia en este nuevo campo es leer sobre eldiseño Web. Algunos buenos libros sobre diseño Web son:Eckerson, W. W. Performance Dashboards: Measuring, Monitoring, and Managing Your Business. Nueva York:John Wiley & Sons, Inc., 2005.Few, S. Information Dashboard Design: The Effective Visual Communication of Data. Sebastopol, CA: O’ReillyMedia, Incorporated, 2006.Flanders, V. y D. Peters. Son of Web Pages That Suck: Learn Good Design by Looking at Bad Design. Alameda,CA: Sybex, 2002.McNeil, P. The Web Designer’s Idea Book: The Ultimate Guide to Themes, Trends & Styles in Website Design.Nueva York: F+W Media, 2008.A T R A C T I V O D E L A M A CHay muchas metodologías para crear sitios Web. Los codificadores desean el mayor grado de control posible sobre elcódigo HTML, pero muchos diseñadores no están tan interesados en dominarlo. Los buenos diseñadores desean poderincluir muchos elementos distintos tanto en gráficos como en texto, girar y mejorar imágenes, darles formato en diseñoscuidadosamente elaborados y hacer que tengan la misma apariencia en cualquier navegador y en cualquier resolución.Hay muchos paquetes WYSIWYG disponibles que permiten a los diseñadores hacer esto, tanto en una Mac como enuna PC. Algunos de estos paquetes funcionan bien; otros no.Softpress Systems, los desarrolladores de Freeway Pro, han creado software de diseño Web con un enfoque dife-rente. A diferencia de otros paquetes, Freeway Pro no crea código mientras el diseñador trabaja, sino hasta que el dise-ñador está satisfecho con su diseño. De esta manera, el código es en extremo eficiente. También es una herramienta muyútil para la creación de prototipos. Freeway Pro supone que cuando cambien los estándares, las actualizaciones para elsoftware permitirán a los diseñadores Web volver a publicar todo el sitio utilizando el estándar actualizado.FIGURA 11.MACFreeway Pro de Softpress Systems ofrece un enfoque único para los diseñadores de sitios Web.www.xlibros.com
352 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOANALICE TAMBIÉN MALOS EJEMPLOS DE PÁGINAS WEB Elabore críticas de páginas Web mal diseñadas yrecuerde evitar esos errores. Examine el sitio Web en www.webpagesthatsuck.com. A pesar de su nombre“contracultural”, es un maravilloso sitio que provee vínculos a muchos sitios mal diseñados y resalta los erroresque cometieron sus diseñadores.CREE SUS PROPIAS PLANTILLAS Si adopta una página con apariencia estándar para la mayoría de las páginas quevaya a crear, podrá tener el sitio Web en funcionamiento rápidamente, con una apariencia buena y consistente.Se pueden crear sitios Web mediante el uso de hojas de estilo en cascada (CSS), con lo cual el diseñador puedeespecificar sólo una vez el color, tamaño y tipo de fuente, además de muchos otros atributos. Estos atributos sealmacenan en un archivo de hoja de estilo y después se aplican a muchas páginas Web. Si un diseñador cambiauna especificación en el archivo de hoja de estilo, se actualizarán todas las páginas Web que utilizan esa hoja deestilo para reflejar el nuevo estilo.USE COMPLEMENTOS, AUDIO Y VIDEO CON MEDIDA Es maravilloso tener las nuevas características que poseenlas páginas profesionales, pero debemos recordar que todos los que ven nuestro sitio no necesitan tener todos losnuevos complementos. No ahuyente a los visitantes de su página.PLANIFIQUE Los buenos sitios Web están cuidadosamente planificados. Ponga atención a lo siguiente:1. Estructura.2. Contenido.3. Texto.4. Gráficos.5. Estilo de presentación.6. Navegación.7. Promoción.Estructura Planificar la estructura de un sitio Web es uno de los pasos más importantes para desarrollar un sitio Webprofesional. Piense en sus metas y objetivos. Cada página de la estructura Web general debe tener un mensaje oLogotipo del sitio Web Artículo de portadaImagen jpegSuscripciónde videoVínculos rápidos Artículos principales Salas de chatAnuncios Vínculo de contacto por emailFuentes RSSAnuncios de pancartaVínculos asub-WebsMotor de búsquedaFIGURA 11.14El sitio Web de DinoTech utiliza al máximo los vínculos, fuentes RSS,suscripciones de video y anuncios de pancarta.www.xlibros.com
CAPÍTULO 11 • DISEÑO DE UNA SALIDA EFECTIVA 353FIGURA 11.15Podemos evaluar los vínculosrotos en un sitio Web mediante eluso de un paquete como MicrosoftVisio.alguna otra información relacionada. Algunas veces es conveniente examinar sitios profesionales para analizarlosen cuanto a su contenido y características. En la figura 11.14 se muestra una pantalla del sitio Web DinoTech. Elpropósito del sitio y el medio Web funcionan bien en conjunto. Observe que hay mucho énfasis en apoyar a losusuarios en el sitio. Hay texto, gráficos, imágenes JPEG e iconos. Además hay muchos tipos de vínculos: a fuentesRSS, video, sub-Webs, salas de chat, un motor de búsqueda y muchas otras características.Para ayudar a planear y mantener una estructura sólida, un webmaster puede aprovechar las diversas he-rramientas para creación de diagramas y mapas de sitios Web disponibles. Muchos paquetes de software, inclu-yendo Microsoft Visio, tienen opciones de diagramas Web integradas en el software. Además de ser útiles parael desarrollo, estas herramientas se vuelven incluso más importantes al dar mantenimiento al sitio. Dada la natu-raleza dinámica de la Web, los sitios vinculados a su sitio podrían moverse en cualquier momento y usted o suwebmaster tendrían que actualizar los vínculos.En la figura 11.15 se muestra un mapa de una sección del sitio Web de los autores en la ventana de Micro-soft Visio. En este ejemplo exploramos el sitio Web en todos los niveles existentes. Observe los vínculos a pági-nas de HTML, documentos, imágenes (archivos GIF o JPEG) y elementos “mail-to” (una forma de enviar correoelectrónico a una persona designada). Los vínculos pueden ser internos o externos. Si un vínculo está roto, apa-rece una X de color rojo y el analista puede investigar más sobre ello. Este archivo de Visio se puede imprimir ensecciones para publicarlo en la pared y obtener una imagen general del sitio Web.Contenido Provea algo importante a los usuarios del sitio Web. Las animaciones, películas y sonidosemocionantes y divertidos, pero debe incluir el contenido apropiado para que el usuario siga interesado. Ofrezcaalgún consejo oportuno, información importante, una oferta gratuita o cualquier actividad que pueda proveer, quesea interactiva y haga que los usuarios pasen del modo de exploración al modo interactivo.La pegajosidad es una cualidad que debe poseer un sitio Web. Si un usuario permanece en su sitio duranteun extenso periodo de tiempo, su sitio tiene un alto grado de pegajosidad. Ésta es la razón por la que un comer-ciante incluye muchos elementos de interés en un sitio. Por ejemplo, un comerciante de vinos puede poner lec-ciones sobre cómo descorchar una botella, probar el vino o elegir una copa adecuada.Use una metáfora o imágenes que provean una metáfora para su sitio. Puede usar un tema, como un esca-parate, con páginas adicionales que tengan varias metáforas relacionadas con el escaparate, como una tienda deproductos gourmet. Evite el uso excesivo de caricaturas y no sea repetitivo.Todo sitio Web debe incluir una página FAQ (preguntas frecuentes). A menudo estas preguntas se crean conbase en las experiencias de los usuarios y el personal de soporte técnico, quienes identifican los temas de preocu-pación continua. El ochenta por ciento de las preguntas entra a la categoría FAQ. Al tener las respuestas disponi-bles las 24 horas del día, ahorrará el valioso tiempo de sus empleados y los usuarios. Las páginas FAQ tambiéndemuestran a los usuarios de su sitio que está coordinado con ellos y tiene una buena idea de lo que les gustaríaconocer.www.xlibros.com
354 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOEn la Web, el software COTS tiene otro significado: un sitio puede aprovechar el software previamente es-crito. Algunos ejemplos son los motores de búsqueda (como Google), el software para mapas (como MapQuest),la información sobre el clima y los cintillos de noticias y de la bolsa de valores. Los diseñadores de sitios Webaprecian estos paquetes debido a que pueden incrementar la funcionalidad del sitio, y las características adiciona-les alientan a los usuarios a marcar los sitios Web de sus clientes como sitios favoritos, ya que proveen un conte-nido adicional valioso.Texto Recuerde que el texto también es importante. Cada página Web debe tener un título. Coloque las palabrassignificativas en el primer enunciado que aparece en su página Web. Deje que las personas sepan que estánnavegando en el sitio Web correcto. La escritura clara es especialmente importante.Gráficos La siguiente lista provee los detalles sobre la creación de gráficos efectivos para sitios Web:1. Use uno de los formatos de imagen que se utilizan con más frecuencia, JPEG o GIF. Las imágenes JPEGson mejores para las fotografías y las imágenes GIF son mejores para las ilustraciones. Las imágenes GIFestán limitadas a 256 colores, pero pueden incluir un fondo transparente, píxeles que permiten mostrar elfondo a través de la imagen GIF. Las imágenes GIF también pueden ser entrelazadas, lo cual significa queel navegador Web mostrará la imagen en etapas sucesivas, presentando una imagen más clara en cadaetapa.2. Mantenga el fondo simple y asegúrese de que los usuarios puedan leer el texto con claridad. Al utilizar unpatrón de fondo, asegúrese de poder leer el texto encima del fondo claramente.3. Cree unos cuantos gráficos con apariencia profesional para usarlos en sus páginas.4. Mantenga las imágenes gráficas pequeñas y reutilice las viñetas o botones de navegación, comoRETROCEDER, ARRIBA, EMAIL y SIGUIENTE. Estas imágenes se almacenan en una caché, un área enel disco duro de la computadora que está navegando por el sitio Web. Una vez recibida una imagen, setomará de la caché cada vez que se vuelva a utilizar. El uso de imágenes en caché aumenta la velocidad conla que un navegador puede cargar una página Web.5. Incluya texto en lo que se denomina atributo de texto para las imágenes y los puntos activos de imágenes. Eltexto aparece cuando el usuario desplaza el ratón encima de la imagen. Un atributo alt provee texto para loslectores de pantalla y es esencial para ofrecer el soporte de accesibilidad Web para los visitantes condiscapacidad visual.6. Examine su sitio Web en varias pantallas y resoluciones de pantalla. Las escenas y el texto que se ven bienen una pantalla de video de alta tecnología tal vez no se vean bien en otras pantallas de menor calidad.Estilo de presentación La siguiente lista muestra detalles adicionales sobre cómo diseñar pantallas de entradaatractivas.1. Ofrezca una pantalla de entrada (también conocida como página de inicio) que introduzca al visitante alsitio Web. La página se debe diseñar de manera que se cargue rápidamente. Una buena regla práctica esdiseñar una página que se cargue en 14 segundos (considere que la conexión del visitante de su sitio Webpodría ser más lenta). Esta pantalla de entrada debe ser de 100 kilobytes o menos, incluyendo todos losgráficos.La página de entrada debe contener varias opciones, algo similar a un menú. Una forma fácil delograr esto es diseñar un conjunto de vínculos o botones y colocarlos en el lado izquierdo o en la partesuperior de la pantalla. Estos vínculos se pueden enlazar a otras páginas en el mismo sitio Web o adistintos sitios Web. Podemos incluir un menú de texto especializado con una fuente de menor tamaño enla parte superior o inferior de la página. En la figura 11.16 se muestra un ejemplo de una página deentrada que contiene una imagen extensa y algo de contenido, pero que permite al visitante navegar haciacualquier otra parte del sitio. Esta página se construyó con software que permite a los diseñadores ver elcódigo de HTML (en la parte inferior de la pantalla) al mismo tiempo que la apariencia que tendrá lapágina en un navegador Web.2. Mantenga el número de gráficos a un mínimo razonable. Se requiere un tiempo de descarga adicional paratransferir un sitio con muchos gráficos.3. Use fuentes grandes y coloridas para los encabezados.4. Use imágenes y botones interesantes para los vínculos. A un grupo de imágenes que se combinan en unasola imagen se le denomina mapa de imágenes, el cual contiene varios puntos activos que actúan comovínculos hacia otras páginas.5. Use hojas de estilo en cascada (CSS) para controlar el formato y la distribución de la página Web. Las hojasCSS separan el contenido (el texto y las imágenes) de la apariencia (la presentación). Por lo general, lashojas de estilo en cascada se almacenan en un archivo externo a la página Web; además, una hoja de estilopuede controlar el formato de muchas páginas. Una ventaja de usar las hojas de estilo externas es hacer unawww.xlibros.com
CAPÍTULO 11 • DISEÑO DE UNA SALIDA EFECTIVA 355modificación en la hoja de estilo; por ejemplo, al cambiar el color del texto en negritas cambiará el formatode todas las páginas Web que utilizan esa hoja de estilo. También podemos usar hojas de estilo en cascada enuna sola página Web y cualquier estilo duplicado invalidará al de una hoja de estilo externa, en caso de quese utilice alguna. Esto permite al diseñador variar la apariencia visual estándar de un sitio Web, tal vez parauna página Web de “venta especial” o alguna otra excepción. Es posible agregar estilos a elementosindividuales en una página Web para anular cualquier otra hoja de estilo.6. Use divisiones y hojas en cascada o tablas para mejorar la distribución de una página Web. Las tablas sonfáciles de usar y proveen una distribución adecuada; sin embargo, no son muy apropiadas para los visitantesdiscapacitados. El software de lectura de pantalla lee a través de la página, no necesariamente en la columnade una tabla. Para controlar la distribución en pantalla, las divisiones proveen bloques de texto en la páginaWeb. Cada bloque se puede definir con una posición a partir de la esquina superior izquierda de la pantalla ode un bloque más grande; además puede tener una anchura y una altura, así como un estilo de borde y uncolor de fondo. Las divisiones eliminan la necesidad de colocar tablas dentro de otras tablas y simplifican eldiseño; el software de lectura de pantalla leerá todo el texto en la división para que los visitantes condiscapacidad visual puedan acceder al sitio.7. Use la misma imagen gráfica en varias páginas Web. Mejorará la consistencia y las páginas cargarán conmás rapidez debido a que la computadora almacena la imagen en una caché y no tiene que volver acargarla.8. Use JavaScript para mejorar la distribución de la página Web al hacer que las imágenes cambien cuando secoloque el ratón encima de ellas o que se expandan los menús, por ejemplo. Podemos usar JavaScript paravolver a dar formato a la página Web con base en la altura y anchura de la pantalla. Si el sitio Web esmultinacional, JavaScript puede detectar el lenguaje que se esté usando (una configuración del navegador) yredirigir al espectador a una versión de su página Web en otro idioma.9. Evite el uso excesivo de las animaciones, sonidos y otros elementos relacionados.Navegación ¿Es divertido para usted seguir los vínculos en la Web? La respuesta más probable es que dependede ciertos factores. Cuando descubrimos un sitio Web que se carga fácilmente, tiene vínculos representativosy nos permite regresar con facilidad a los lugares que queremos, entonces es probable que pensemos que esdivertido. La diversión no es sólo jugar; también puede ser una parte importante del trabajo. La investigaciónreciente demuestra que la diversión puede tener un poderoso efecto en la efectividad de la capacitación porcomputadora.Por otro lado, si no puede decidir en cuál botón o punto activo de una imagen hacer clic y tiene miedo deelegir el incorrecto porque podría terminar en la página equivocada que tarda mucho tiempo en cargar, entoncesla navegación es más desagradable que divertida. Un ejemplo es visitar la página de una compañía de softwarepara buscar información sobre las características de la versión más reciente de un producto. Usted tiene las op-ciones tales como productos, descarga, FAQ y soporte técnico. ¿Qué botón lo llevará a las respuestas que busca?FIGURA 11.16Mediante el uso de un editor deHTML (Visual Page en esteejemplo), el diseñador de un sitioWeb puede ver la apariencia quetendrá una página en el navegadory el código de HTML (vea la parteinferior de la pantalla) al mismotiempo.www.xlibros.com
356 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOLo que es más importante, observe la regla de los tres clics. Los usuarios deben ser capaces de moversedesde la página en la que se encuentran hacia la página que contiene la información que desean en tres clics delbotón del ratón.Promoción Promueva su sitio. No suponga que los motores de búsqueda lo encontrarán de inmediato. Envíe susitio cada dos o tres meses a varios motores de búsqueda. Incluya palabras clave, conocidas como metaetiquetas,que los motores de búsqueda utilizarán para vincular las peticiones de búsqueda a su sitio. En la página Websearchenginewatch.com/showPage.html?page=2167931 encontrará información general sobre las metaetiquetas.En www.siteup.com/meta.html podrá descargar un software generador de metaetiquetas gratuito y encontrará uncreador de metaetiquetas en vancouver-webpages.com/META/mk-metas.html. También puede comprar softwarepara facilitar este proceso. Si trata de usar correo electrónico para promover su sitio, otros lo considerarán correobasura o spam.Anime a sus lectores a marcar su sitio Web como sitio favorito. Si usted coloca vínculos y les sugiere quevayan a sitios Web afiliados que tengan “la mejor página de reseñas de películas en el mundo” o el sitio Webpara “obtener música gratuita”, no de por sentado que regresarán a su sitio en un futuro cercano. La manera deanimar a sus visitantes a que vuelvan a visitar su sitio es que lo marquen como favorito (a los marcadores se lesllama “favoritos” en Microsoft Internet Explorer). Puede agregar el vínculo Haga clic aquí para marcar estapágina a su página Web para automatizar el proceso. Tal vez también quiera diseñar un “favicon” o icono favo-rito, para que los usuarios puedan identificar su sitio en sus listas de favoritos.Mantenimiento de los sitios WebComo desarrollador Web tal vez también le pidan que mantenga y actualice sitios Web en forma continua. Éstees un servicio que usted puede proveer y el pago se puede acordar durante las primeras negociaciones del con-trato del proyecto y su presupuesto. En la actualidad podemos dar por hecho que hay muchas características enlos sitios Web corporativos que son estables y, por ende, no requieren de mucha actualización. Sin embargo,el panorama es distinto para los sitios de comercio electrónico, donde hay que actualizar el contenido según latemporada. Los elementos a mostrar en la página principal cambian, al igual que las tendencias, los descuentosO P O R T U N I D A D D E C O N S U L T O R Í A 1 1 . 5Un día en el campoLa cosa es que soy impaciente”, dice Seymour Fields, propie-tario de una cadena de 15 exitosas florerías/mercados florales eninteriores de nombre Fields, que se encuentran en tres ciudadesdel Medio Oeste. “¿Ve esto aquí?”, golpetea la pantalla de su PCcon fastidio. “Llevamos la nómina y toda la contabilidad con estascosas, pero no les doy el uso que debería darles. En realidad mesiento un poco culpable sobre ello. ¿Ve?”, dice mientras hace unaraya en la pantalla con su dedo. “Incluso tiene polvo. Pero soyuna persona práctica. Si está aquí ocupando espacio, quiero usarla.U olerla, o por lo menos disfrutar al verla, como las flores, ¿nocree usted? O sacarla de raíz. Es lo que digo. La única vez quetraté de hacer algo con ella fue un verdadero desastre. Bueno,mire, le puedo mostrar si es que todavía recuerdo cómo hacerlo”.Seymour procede a tratar de ejecutar un programa, pero no puedehacer que funcione.Clay Potts es un analista de sistemas que ha estado trabajandoen un proyecto de sistemas para toda la cadena Fields. Parte de lapropuesta original fue proveer a Seymour y sus vicepresidentes unsistema de soporte de decisiones en grupo que les ayudara a idearuna estrategia para determinar qué mercados europeos visitar paraestablecer contratos de compra de flores frescas, a qué puntos deventa enviar ciertos tipos específicos de flores y cuánta mercancíageneral (como macetas, floreros, tarjetas y chucherías) almacenaren cada punto de venta.Seymour continúa: “Le puedo decir qué es lo que no nos gustósobre el programa con el que trabajé. Había que pasar por demasia-das capas, demasiado follaje o como se llame. Incluso con unapantalla frente a mí, era como cambiar páginas en un informegrueso. ¿Cómo se le dice a eso?”.“¿Menús?”, sugiere Potts para tratar de ayudar. “El puntoprincipal es que no le gustó tener que pasar por mucha informaciónpara llegar a la pantalla que necesitaba”.Seymour Fields mira felizmente a Potts y dice: “Acertaste.Quiero ver más campos en cada pantalla”.¿Cómo debería diseñar Potts la salida de pantalla de maneraque Fields y su grupo puedan obtener lo que desean en cada pan-talla, cumpliendo a la vez con los lineamientos para el buen diseñode pantallas? Recuerde que los miembros del grupo están ocupa-dos y utilizan la computadora con poca frecuencia. Diseñe unapágina con hipervínculos que trabaje bien en un DSS para los vi-cepresidentes. ¿Qué debemos incluir en la primera pantalla y quédeberíamos almacenar en hipervínculos? Haga una lista de loselementos para cada opción y explique en un párrafo por qué de-cidió sobre esta estrategia.www.xlibros.com
CAPÍTULO 11 • DISEÑO DE UNA SALIDA EFECTIVA 357y las características interactivas. Los sistemas de administración de contenido (CMS) son potentes herramientasde software que pueden permitir al analista desarrollar y dar mantenimiento a sitios Web y demás aplicacionesen línea. Joomla! es un CMS cada vez más popular, que podrá bajar de www.joomla.org/about-joomla.html. Estábasado en PHP y MySQL. A diferencia de muchos CMS propietarios, que son costosos y no están disponiblesen muchas partes, Joomla! es una solución de código fuente abierto disponible en forma gratuita para cualquierdesarrollador.Creación de blogs (Weblogs)Los usuarios corporativos escriben blogs, también conocidos como Weblogs, para la comunicación tanto internacomo externa. Los blogs son informales y personales; a menudo invitan a los comentarios y la retroalimentación.Son muy fáciles de crear y actualizar; están diseñados para cambiar a diario. Las empresas usan blogs para publi-cidad y para crear redes sociales para sus consumidores, clientes y distribuidores en torno a sus productos, con locual crean confianza y relaciones con los clientes.Los blogs corporativos se supervisan con base en un sentido de responsabilidad por los participantes. Loslineamientos, las políticas y las leyes que conforman las prácticas de supervisión incluyen valores culturales,éticos y legales compartidos, tales como respetar a los demás empleados y clientes, no publicar información deli-cada o secreta sobre la empresa ni cualquier cosa protegida por copyright (sin permiso); también hay que excluirtodo lo que se incite el odio, que sea ofensivo o que viole la privacidad de otros.Incluso con todos los lineamientos anteriores, de todas formas debe asegurarse de que los mensajes publica-dos en los blogs se expresen en lenguaje natural y no en términos legales. La entrada más reciente debe apareceral principio del blog y debe contener los siguientes elementos:1. El permalink, o vínculo permanente, específico para cada mensaje publicado en el blog. El permalink nuncadebe cambiar.2. El encabezado o título del mensaje.3. El vínculo primario, que conecta al lector con el tema en discusión.4. Un resumen opcional, que a menudo aparece después del vínculo.5. El texto o comentario del blog.6. Una imagen opcional.7. Una cita en bloque, que contiene citas o demás material de otras fuentes para contribuir a la discusión(a menudo con sangría o en una fuente distinta, para diferenciarla del texto principal).8. Vínculos para los comentarios de otras personas.9. Otras características del software de blog, como un calendario, un formulario de búsqueda y demáscaracterísticas universales.PRODUCCIÓN DE LA SALIDA Y XMLLa producción de la salida varía dependiendo de la plataforma utilizada para producirla. Hay muchas formasdistintas de crear salida, que varían desde el software simple de bases de datos como Microsoft Access, hastaprogramas tales como SAS, Crystal Reports y los archivos PDF de Adobe Acrobat.En el capítulo 8 vimos el XML. Una de las ventajas de usar XML es que el documento de XML se puedetransformar en distintos tipos de medios de salida. Para ello se utilizan las hojas de estilo en cascada (CSS) olas transformaciones de lenguaje de estilo extensible (XSLT). Estos métodos refuerzan la idea de que los datos sedeben definir una vez y se pueden usar muchas veces en distintos formatos.Las hojas de estilo en cascada son una manera sencilla de transformar un documento de XML. La hoja deestilo provee una serie de estilos, como la familia de la fuente, el tamaño, el color, el borde, etcétera, que se vincu-lan con los elementos del documento de XML. Estos estilos pueden variar para distintos medios: una pantalla,salida impresa o un dispositivo portátil. El software de transformación detecta el tipo de dispositivo y aplica losestilos correctos para controlar la salida.Por ejemplo, un estilo utilizado para una pantalla de panel plano podría utilizar una paleta con muchos co-lores y una fuente sans-serif, que es más fácil de leer en una pantalla. Se puede usar un estilo diferente que con-tenga una fuente serif en color negro o gris para definir un informe impreso para los mismos datos. Podríamosusar un tamaño de fuente más pequeño para un dispositivo portátil o un teléfono móvil.La desventaja de usar las hojas de estilo en cascada es que no permiten al analista manipular los datos, comoreordenar los elementos o clasificarlos, y sólo se puede agregar una cantidad limitada de texto de identificación,como las leyendas. Se utilizan básicamente para el formato.Las transformaciones de lenguaje de estilo extensible (XSLT) son un medio más potente para transformar undocumento de XML, ya que permiten al analista seleccionar los elementos e insertarlos en una página Web o enotro medio de salida. La figura 11.17 muestra el proceso de transformación. XSLT no es un lenguaje de progra-www.xlibros.com
358 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOmación, pero utiliza una serie de instrucciones para definir qué elementos se deben usar como salida, la secuenciade orden, la selección de datos, etcétera. En la figura 11.18 se muestra un ejemplo de transformación de XML. ElXML se muestra a la izquierda y el resultado de la transformación se muestra a la derecha. Cabe mencionar quesólo se incluyen en la salida los datos entre las etiquetas (los símbolos menor que [<] y mayor que [>]).AjaxHay otra técnica conocida como Ajax que utiliza JavaScript y XML para obtener pequeñas cantidades de datos(ya sea en texto simple o XML) de un servidor sin dejar la página Web. Ésta es una gran ventaja, ya que eliminala necesidad de cargar toda la página Web completa. Funciona al permitir que la página Web se vuelva a dar for-mato a sí misma con base en las opciones introducidas por el usuario. Como Ajax está también relacionado conla entrada de los usuarios, en el capítulo 12 podrá consultar detalles adicionales.En esta sección hablaremos sobre Ajax debido a que tiene implicaciones importantes también en el aspectode la salida. El analista y el diseñador deben determinar cuándo se deben agregar o modificar los datos en unapágina Web; también deben identificar las condiciones que producen la modificación. El orden en que se hacenlas preguntas también es importante en este diseño.En la figura 11.19 se muestra un ejemplo de una página Web que utiliza Ajax, la cual demuestra que Ajaxhace que sea posible mostrar mucho menos datos en una página, con lo cual la salida se vuelve menos desorde-nada y confusa. En este ejemplo, el usuario introdujo una de las cuatro formas disponibles para reducir la bús-queda y ver una lista de los clientes actuales. Las opciones que el usuario tenía disponibles eran: 1) introducir losprimeros tres dígitos de un código postal, 2) introducir un código de área telefónica, 3) seleccionar el estado o4) seleccionar un país. Tal vez el usuario no conozca el código postal o de área y por lo tanto tenga que buscarpor estado o país, por lo que las opciones son muy útiles.Después de introducir una de las opciones de ubicación, en este caso los primeros tres dígitos del códigopostal, el usuario hizo clic en el botón Get Customers (obtener clientes). El valor del código postal se envía alservidor junto con los datos que indican que era un código postal. Después el servidor busca todos los registrosde los clientes para la ubicación seleccionada, crea un documento de XML y lo envía a la misma página Web.Al diseñar la salida, el analista de sistemas tiene muchas opciones relacionadas con la forma de mostrar es-tos datos en la página Web. En este caso el analista especificó que se utilizaría el documento de XML para crearuna lista desplegable que contenga todos los clientes actuales para la ubicación deseada. Una vez que el usuarioselecciona un cliente de la lista desplegable aparece más información sobre ese cliente específico, como se mues-tra en el ejemplo.<?xml version="1.0"?><clientes><nombre><telefono></clientes>Salida de papelNuevo documento de XMLDocumento de XMLSoftware XSLTTeléfono inteligente (Smartphone)Página Web<?xml version="1.0"?><clientes><nombre><telefono></clientes>FIGURA 11.17El software de transformación delenguaje de estilo extensible(XSLT) se puede utilizar paracrear documentos de XML ytransformarlos en muchosformatos distintos para unavariedad de plataformas.www.xlibros.com
CAPÍTULO 11 • DISEÑO DE UNA SALIDA EFECTIVA 359<?xml version=“1.0” standalone=“no”?><?xml–stylesheet type=“text/xsl” href=“cust02.xsl” ?><clientes><titulo>Información del cliente</titulo><cliente><numero>09288</numero><nombre><apellidopaterno>Green</apellidopaterno><primernombre>George</primernombre><inicial_segnom>L</inicial_segnom></nombre><direccion><calle>123 Oak Street</calle><apartamento>Suite 16</apartamento><ciudad>Madison</ciudad><estado>WI</estado><cp>53704</cp><pais>Estados Unidos</pais></direccion><saldo_actual>123.45</saldo_actual></cliente><cliente><numero>15008</numero><nombre><apellidopaterno>Brown</apellidopaterno><primernombre>Sally</primernombre><inicial_segnom>S</inicial_segnom></nombre><direccion><calle>123 Elm Street</calle><apartamento>Apt. 1</apartamento><ciudad>Camden</ciudad><estado>NJ</estado><cp>08102</cp><pais>Estados Unidos</pais></direccion><saldo_actual>9,876.54</saldo_actual></cliente></clientes>Información del clienteNúmero:Primer nombre:Apellido paterno:Calle:Apartamento:Ciudad:Estado:CP:País:Saldo actual:09288GeorgeGreen123 Oak StreetSuite 16MadisonWI53704United States123.45Número:Primer nombre:Apellido paterno:Calle:Apartamento:Ciudad:Estado:CP:País:Saldo actual:15008SallyBrown123 Elm StreetApt. 1CamdenNJ08102United States9,876.54FIGURA 11.18Una transformación de XML, conel XML a la izquierda y elresultado de la transformación a laderecha. Sólo se incluyen en lasalida a la derecha los datos entrelas etiquetas.FIGURA 11.19Una página Web que utiliza Ajaxhace que sea posible mostrarmucho menos datos en una página,con lo cual se obtiene una pantallaordenada.www.xlibros.com
360 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOLa ventaja de usar Ajax para mostrar datos es que el usuario no tiene que esperar a que aparezca una nuevapágina Web después de realizar una selección. La filosofía de Ajax es mostrar preguntas limitadas para que elusuario las responda en forma incremental. Esto elimina el desorden en la pantalla. Una vez que el usuario res-ponde a una pregunta al hacer una elección, se puede generar una nueva pregunta.E X P E R I E N C I A D E H Y P E R C A S E ® 1 1Yo diría que la recepción que obtuvo, o más bien que su equipoobtuvo en relación con la presentación de su propuesta fue bastantecálida. ¿Qué le pareció conocer al Sr. Hyatt? ¿Qué? ¿No asistió? Oh[riéndose], el es su propio jefe. De todas formas no me preocuparíamucho por eso. Los informes que obtuve de Snowden fueron alen-tadores. De hecho, ahora él quiere ver algunos diseños preliminaresde todos ustedes. ¿Podrían tener algo en su escritorio o enviarlocomo adjunto en un correo electrónico en dos semanas? Él estará enun viaje de negocios en Singapur la próxima semana, pero cuandose recupere del desfase de horarios estará buscando esos diseños.Gracias”.Preguntas de HYPERCASE1. Considere los informes de la Unidad de capacitación(Training Unit). ¿Cuáles son las quejas de Snowden sobreestos informes? Explique en un párrafo.2. Use un formulario en papel de diseño, Microsoft Visio o unaherramienta Case para diseñar un prototipo de una pantallade salida con base en los informes de la Unidad decapacitación que sintetizarán la siguiente información paraSnowden:Número de proyectos aceptados en la Unidad decapacitación.Número de proyectos que se están reevaluando.Áreas básicas de capacitación por las que se está solicitandoun consultor.3. Diseñe una pantalla de salida adicional que usted crea queapoyará a Snowden en el tipo de proceso de toma dedecisiones que realiza con frecuencia.4. Muestre sus diseños a tres de sus compañeros de clase.Obtenga retroalimentación por escrito de parte de ellos sobrecómo mejorar las pantallas de salida que diseñó.5. Rediseñe las pantallas para capturar las mejoras sugeridaspor sus compañeros de clase. Explique en un párrafo cómolidió con cada una de sus cuestiones.FIGURA 11.HC1Usted tiene la habilidad de ver ycriticar las pantallas de salida enHyperCase.RESUMENLa salida es cualquier información o datos útiles que el sistemade información o el sistema de soporte de decisiones entreganal usuario. La salida puede tomar casi cualquier forma, inclu-yendo la salida impresa, de pantalla, audio, microformas, CD-ROM o DVD y documentos basados en Web.El analista de sistemas tiene seis objetivos principales aldiseñar la salida: diseñar la salida para que sirva el propósitoprevisto para los humanos y la organización, ajustarla al usua-www.xlibros.com
CAPÍTULO 11 • DISEÑO DE UNA SALIDA EFECTIVA 361PALABRAS CLAVE Y FRASESAjaxCD-ROMcomplemento (plug-in)correo electrónico (email)diseño de la salidaDVDFAQfuentes RSShipertextohipervínculohoja de estilo en cascada (CSS)Información constanteinformación variableJavalocalizador uniforme de recursos (URL)marcadornavegadorpágina Webpantallapegajosidadpodcastingpredisposición de la salidasalida de audiosalida electrónicasalida externasalida internasistema de administración de contenido (CMS)sitio Webtablero de controltablero electrónico de anunciostransformación de lenguaje de estilo extensible (XSLT)Weblogs (blogs)WebmasterPREGUNTAS DE REPASO1. Mencione los seis objetivos que el analista persigue al diseñar la salida de un sistema.2. Compare las salidas externas con las salidas internas producidas por el sistema. Recuerde que debe considerar lasdiferencias en los usuarios externos e internos.3. ¿Cuáles son tres situaciones que señalan a las impresoras como la mejor opción de tecnología de salida?4. Mencione dos ejemplos en los que la salida de pantalla sea la mejor solución como opción de método de salida.5. Mencione los métodos potenciales de salida electrónica para los usuarios.6. ¿Cuáles son las desventajas de la salida electrónica y basada en Web?7. Mencione diez factores a considerar al elegir la tecnología de salida.8. ¿Qué tipo de salida es mejor si las actualizaciones frecuentes son una necesidad?9. ¿Qué tipo de salida es deseable si muchos lectores van a leer, almacenar y revisar la salida durante cierto número deaños?10. ¿Cuáles son las desventajas de la salida de audio?11. Mencione tres formas en que las presentaciones de la salida se predisponen en forma no intencional.12. ¿Cuáles son cinco formas en que el analista puede evitar la predisposición en la salida?13. ¿Cuál es la diferencia entre la información constante y variable que se presenta en un informe?14. ¿Por qué es importante mostrar a los usuarios un prototipo de un informe o una pantalla de salida?15. Mencione seis elementos funcionales de los informes impresos.16. Mencione cinco elementos estilísticos o estéticos de los informes impresos.17. ¿En qué formas difieren las pantallas, la salida impresa y los documentos basados en Web?18. Mencione cuatro lineamientos para facilitar el diseño de una buena salida de pantalla.rio, entregar la cantidad correcta de salida, entregarla en ellugar correcto, proveer la salida a tiempo y elegir el métodocorrecto.Es importante que el analista tenga en cuenta que el con-tenido de la salida está relacionado con el método de salida.La salida de distintas tecnologías afecta a los usuarios de di-ferentes formas. Las tecnologías de salida también difieren encuanto a su velocidad, costo, portabilidad, flexibilidad, accesi-bilidad y posibilidades de almacenamiento y recuperación. Hayque considerar todos estos factores al decidir entre la salidaimpresa, de pantalla, de audio, electrónica o basada en Web, ouna combinación de éstas.La presentación de la salida puede predisponer a los usua-rios a la hora de interpretarla. Los analistas y los usuariosdeben estar conscientes de las fuentes de predisposición. Esconveniente que los analistas interactúen con los usuarios paradiseñar y personalizar la salida, para informar a los usuariossobre las posibilidades de predisposición en la salida, paracrear una salida flexible y con capacidad de modificación, ypara capacitar a los usuarios de manera que utilicen varias sa-lidas para ayudar a verificar la precisión de cualquier informeespecífico.Los informes impresos se diseñan mediante el uso de he-rramientas de diseño de software asistido por computadora quecuentan con plantillas de diseño e interfaces tipo “arrastrar ysoltar”. El diccionario de datos sirve como la fuente de los da-tos necesarios en cada informe.Es importante diseñar la salida para las pantallas de losusuarios, en especial para DSS y Web. La estética y la utili-dad son imprescindibles al crear una salida bien diseñada paralas pantallas. Es importante producir prototipos de pantallasy documentos Web que animen a los usuarios a interactuarcon estos prototipos y realizar las modificaciones cuando sedesee.www.xlibros.com
362 PARTE IV • LOS FUNDAMENTOS DEL DISEÑO19. ¿Qué diferencias hay entre la salida para un DSS y la salida para un MIS más tradicional?20. ¿Cuáles son las cuatro consideraciones primarias que tiene el analista al diseñar la salida gráfica para los sistemas desoporte de decisiones?21. Defina el concepto de pegajosidad.22. Mencione siete lineamientos para crear buenos sitios Web.23. Mencione cinco lineamientos para usar gráficos al diseñar sitios Web.24. Mencione siete ideas para mejorar la presentación de los sitios Web corporativos que diseñe.25. ¿Cuál es la regla de los “tres clics”?26. ¿En qué formas puede animar a las empresas a promover sus sitios Web que usted desarrolló?27. ¿Cómo una hoja de estilo en cascada permite que el analista produzca la salida?28. ¿Cuáles son las ventajas de usar XSLT en vez de una hoja de estilo en cascada?29. ¿Qué son fuentes RSS?30. ¿Cómo puede el administrador Web usar fuentes RSS?31. ¿Cuál es el principal uso de los tableros de control?32. ¿Qué son los widgets (o gadgets)?33. ¿Por qué debe un diseñador de sistemas estar consciente de la popularidad de los widgets (o gadgets)?34. ¿Cómo permite una hoja de estilo en cascada que el analista produzca la salida?35. ¿Cuáles son las ventajas de usar una transformación de lenguaje de estilo extensible en vez de una hoja de estilo encascada?36. ¿Cómo ayuda Ajax a construir páginas Web efectivas?PROBLEMAS1. “Estoy seguro de que no les importará si empezamos a enviar el informe en estas hojas de computadora extra grandes.Todo este tiempo lo condensamos, reformulamos y lo enviamos a nuestras cuentas más grandes, pero ahora no podemos.Hay tan poco personal que no tenemos el tiempo”, dice Otto Breth. “Voy a escribir un comentario aquí para decirlescómo responder a este informe y así podremos enviarlo”.a. ¿Qué problemas potenciales puede ver al cambiar la salida externa casualmente? Haga una lista.b. Describa en un párrafo cómo pueden diferir las salidas externa e interna en cuanto a función y apariencia.2. “No necesito verla muy seguido, pero cuando llega el momento tengo que poder revisarla rápidamente. Creo queperdimos el último contrato debido a que la información que necesitaba estaba enterrada en una torre de papel en elescritorio de alguien”, dice Luke Alover, un arquitecto que describe los problemas de la empresa a uno de los analistasasignados al nuevo proyecto de sistemas. “Lo que necesito es información al instante sobre el costo que tenía un edificiode esa medida en pies cuadrados la última vez que ofertamos; cuánto cuestan los materiales básicos como acero, vidrio yconcreto con nuestros tres principales proveedores; quién podría ser nuestra competencia en este tipo de construcción yquién pertenece al comité que tomará la decisión final sobre quién ganó la subasta. Justo ahora, esta información seencuentra en cien informes en alguna parte. Tengo que buscar en todos lados estos informes”.a. Dados los detalles limitados que tenemos aquí, escriba un párrafo para sugerir un método de salida que Luke puedausar para resolver algunos de sus problemas actuales. Explique en un segundo párrafo sus razones para elegir elmétodo de salida que eligió (sugerencia: asegúrese de relacionar el método de salida con el contenido de la salida ensu respuesta).b. El pensamiento actual de Luke es que no se debe mantener ningún registro en papel de la salida en cuestión.Describa en un párrafo sobre los factores a sopesar antes de utilizar la salida de pantalla en vez de los informesimpresos.c. Haga una lista de cinco a siete preguntas que usted haría en relación con la función de la salida en la organización aLuke y a los demás antes de decidir deshacerse de cualquier informe impreso que se utilice en ese momento.3. He aquí varias situaciones que requieren decisiones sobre el contenido de la salida, la metodología de salida, ladistribución, etcétera. Para cada situación observe la decisión de salida apropiada.a. Un proveedor grande con buena reputación de materia prima clave para el proceso de producción de la empresa parala que usted trabaja requiere un informe sintetizado de fin de año sobre los totales comprados a ese proveedor.b. Se envían al personal memos internos sobre una lluvia de ideas en relación con los planes para un día de campo dela empresa y la recaudación de fondos.c. Un encargado de tomar decisiones clave necesita un informe sintetizado de la situación financiera de la empresapara presentar una propuesta a los potenciales patrocinadores externos.d. El personal de recepción requiere un listado de las reservaciones de cuartos de hotel de esta noche.e. La policía local necesita un listado de las reservaciones de cuartos de hotel de esta noche.f. Las patrullas de los estacionamientos utilizarán un conteo real de las personas que pasan por las puertas de WallabyWorld (un parque de diversiones australiano).g. Un sistema de inventario debe registrar un artículo cada vez que se escanea mediante un lápiz óptico.h. Veintidós supervisores utilizarán un informe sintetizado de los aumentos de salario por méritos asignados a cada unode los 120 empleados durante una reunión de supervisores; también utilizarán este informe para explicar losaumentos en los sueldos por méritos a los empleados de los departamentos de cada supervisor.i. Tres planeadores estratégicos en la organización requieren información competitiva, pero debe considerarse queincluiría información delicada, en el caso que sea posible una divulgación más amplia.www.xlibros.com
CAPÍTULO 11 • DISEÑO DE UNA SALIDA EFECTIVA 363j. Se requiere un estilo casual de conversación para informar a los clientes sobre las características potentes pero rarasveces utilizadas de un producto.k. Un distrito histórico de cierta ciudad desea informar a sus visitantes sobre los edificios y eventos históricos.l. Hay que entregar advertencias sobre tormentas a los suscriptores en un área geográficamente extensa.4. “Creo que ahora sé cuál era la intención de esa persona, pero me engañó por un instante”, dice la Srita. deLimit.Ella está hablando sobre un prototipo de salida de pantalla diseñado por el analista de sistemas con el que hablóhace unos momentos. “Es decir, nunca consideré que fuera un problema el hecho de que no poder ajustar en unaclase ni el 20 por ciento del cupo total”, dice. “Sabemos que nuestras clases tienen buena demanda, pero como nopodemos contratar más maestros para cubrir las áreas que necesitamos, tuvimos que hacer ajustes en la demanda deestudiantes. Él resaltó como problema el hecho de que sólo el 5 por ciento de los estudiantes que deseen tomar unaclase no puedan entrar, pero está bien. Ahora que sé lo que significa, sólo ignoraré a la computadora cuando emitaun sonido”.a. Describa en uno o dos enunciados el problema al que se enfrenta la Srita. deLimit con la salida de pantalla.b. ¿Es acaso su solución de “ignorar los sonidos” razonable, dado que la salida se encuentra en la etapa de prototipo?c. Explique en un párrafo cómo se puede modificar la salida de pantalla para este problema específico, de manera querefleje mejor las reglas del sistema que utiliza la Srita. deLimit.5. La siguiente es una hoja de registro para un sistema de información de pacientes utilizado por las enfermeras de unsanatorio para registrar los visitantes de los pacientes y las actividades durante sus turnos. Diseñe un informe impresomediante el uso de software de diseño de formularios que proporcione un resumen para la enfermera a cargo de cadaturno y un informe para el coordinador de actividades al final de una semana. Asegúrese de utilizar las convencionesapropiadas para indicar los datos constantes, los datos variables y otros. Estos informes se utilizarán para determinar lospatrones de dotación de personal y los ofrecimientos de actividades a futuro.6. Diseñe la salida de pantalla para el problema 5 mediante el uso de software de diseño de formularios. Haga todas lassuposiciones necesarias sobre la capacidad necesaria del sistema y siga las convenciones de diseño de pantallas para lasinstrucciones en pantalla (Sugerencia: Puede usar más de una pantalla si lo desea.).a. Describa en un párrafo por qué diseñó cada informe como lo hizo en los problemas 5 y 6. ¿Cuáles son lasprincipales diferencias en su metodología en cada problema? ¿Es posible trasplantar con éxito los informes impresosa las pantallas sin necesidad de modificaciones? ¿Por qué sí o por qué no?b. Algunas de las enfermeras están interesadas en un sistema basado en Web al que las familias de los pacientes puedanacceder desde su hogar con una contraseña. Diseñe una salida de pantalla para Web. Describa en un párrafo cómotuvo que alterar su informe para que lo pudiera ver la familia de un paciente.7. Clancy Corporation fabrica uniformes para los departamentos de policía a nivel mundial. Muchos grupos seleccionansus uniformes debido a su bajo costo y a su diseño simple pero digno. Usted va a ayudar a diseñar un DSS para ClancyCorporation, quienes han solicitado una salida en formato tabular que les ayude a tomar varias decisiones en cuanto a losdiseñadores que deben usar, dónde comercializar sus uniformes y qué cambios hacer en los uniformes para queconserven una apariencia actualizada. La siguiente tabla enlista algunos de los datos que la compañía desearía ver entablas, incluyendo los nombres de los estilos de uniformes, un ejemplo de un grupo comprador para cada estilo y losdiseñadores a cargo de los estilos de uniformes. Prepare un ejemplo de salida en formato tabular para pantalla queincorpore estos datos sobre Clancy. Siga las convenciones apropiadas para las pantallas de salida en formato tabular. Usecódigos y una clave en donde sea apropiado.Fecha Paciente Visitantes Relación Actividades2/14 Clarke 2 Madre, padre Caminó por los pasillos, asistió a la capilla,comidas en la cafeteríaCoffey 6 Compañeros de trabajo Jugaron, hicieron fiesta en el cuartoMartine 0 --------------- Comidas en el cuartoLaury 4 Esposo y amigos Jugaron en la terraza interior, vieron TVFinney 2 Padres Conversación, comidas en la cafeteríaCartwright 1 Hermana Conversación, salón de manualidadesGoldstein 2 Hermana, hermano Conversación, juegos fuera del cuarto, jacuzziNombre del estilo Comprador de ejemplo DiseñadoresMilitar completo NYPD Claudio, Rialtto, Melvine MineSemi militar LAPD Rialtto, Calvetti, Duran, Melvine MineFormal Fuerzas armadas australianas Claudio, Dundee, Melvine MineCasual “Miami Vice” Johnson, Melvine Minewww.xlibros.com
364 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOAsegúrese de seguir las convenciones de diseño apropiadas para las pantallas. Use códigos y una clave si esnecesario.b. Seleccione un segundo método para graficar que permita a los encargados de tomar decisiones de Clancy ver unatendencia en la compra de ciertos estilos de uniformes específicos a través del tiempo. Dibuje una gráfica paravisualización como parte de la salida del DSS de Clancy. Asegúrese de seguir las convenciones de diseño apropiadaspara las pantallas. Use códigos y una clave si es necesario.c. Describa en un párrafo las diferencias en los dos gráficos en pantalla que seleccionó. Defienda sus elecciones.9. Michael Cerveris es propietario de varios autos de carreras. ¿Qué medidas de desempeño necesita desarrollar para llevarregistro del desempeño de su conductor, los mecánicos de pit y el personal de soporte (sin mencionar el gasto de lasllantas)?10. Diseñe un tablero de control de DSS para Michael (problema 9). Use los tipos de diagramas y gráficos apropiados parailustrar el desempeño.11. Diseñe un tablero de control para llevar el registro de las acciones y la cartera de clientes de una persona. Piense cómopodría utilizar el tablero de control para tomar decisiones sobre comprar y vender acciones. Recuerde que un clientepuede tener más de un corredor de bolsa.12. Gabriel Shanks opera una compañía teatral sin fines de lucro que produce siete obras por año en tres teatros. Cada obradura ocho semanas, pero se puede extender cuatro semanas más si resulta un éxito. Diseñe un tablero de control paraGabriel; tome en cuenta las distintas fases del montaje, así como la necesidad de vender todos los boletos que seaposible. No olvide que Gabriel está involucrado en el teatro, es muy visual y no le gustan las tablas.13. Mientras Gabriel (del problema anterior) se hace cargo de varios detalles durante un día ordinario, le gustaría estar altanto de las noticias de teatro en Manhattan y tener al mismo tiempo algunas herramientas simples a la mano paraayudarle con sus actividades relacionadas con la computadora. ¿Qué tipo de widgets y gadgets necesitaría Gabriel parahacer su trabajo y tener al mismo tiempo algunas herramientas simples basadas en computadora siempre disponibles?14. Explore la Web para ver todos los sitios Web que estén mal y bien diseñados. Seleccione tres ejemplos de cada uno.Comente sobre lo que hace que los sitios sean excelentes o malos; use el formulario de crítica que presentamos antes enel capítulo para compararlos y contrastarlos.15. Proponga un sitio Web para Clancy’s, la empresa de uniformes que describimos en los problemas 7 y 8. Haga unbosquejo a mano o use software de diseño de formularios para crear un prototipo de la página de inicio de Clancy’s.Indique los hipervínculos e incluya un bosquejo de un documento de hipervínculo. Recuerde incluir gráficos, iconos eincluso sonido u otro tipo de medio apropiado. Describa en un párrafo quiénes son los usuarios previstos para el sitioWeb y por qué es conveniente que Clancy’s cuente con una presencia Web.16. Las tiendas departamentales Elonzo’s son una cadena de aproximadamente 50 tiendas de ventas al detalle, las cuales seespecializan en artículos de cocina, baño y otros enseres domésticos, incluyendo muchos artículos decorativos y demoda. Hace poco Elonzo’s decidió automatizar su registro de regalos para permitir que los invitados a las bodas y otroseventos puedan ver los artículos seleccionados por los novios u otras personas.a. Diseñe una página Web que permita a los clientes introducir un código postal y buscar la tienda más cercana.b. Diseñe una página Web para que los clientes vean los regalos y puedan pedirlos en línea. No incluya los formulariosreales para los pedidos, sólo los productos. ¿Qué tipo de opciones estarían disponibles para los clientes? Incluyabotones o vínculos para cambiar la secuencia de orden en su diseño.c. Diseñe una lista impresa que los clientes puedan solicitar cuando vayan a una de las tiendas. ¿Cuáles serían lassecuencias óptimas para un cliente que trata de buscar artículos? ¿Se incluirían todos los elementos solicitados porlos novios en la lista? (Sugerencia: tal vez ya se hayan comprado algunos.).17. Diseñe el esquema de un podcast para alguien que pasea por su universidad, colegio o empresa. ¿En qué secuenciacolocaría los temas? ¿Cuánto tiempo asignaría para cada campus o ubicación? Suponga que el grupo llegará en lamañana y tome en cuenta el almuerzo en el podcast.18. Diseñe una pantalla de recordatorio de vuelos para un teléfono inteligente u otro dispositivo portátil.19. Diseñe un estilo Ajax de página Web que permita al decano de un colegio comunitario seleccionar instructoresde medio tiempo. El decano debe ser capaz de seleccionar una disciplina o curso y hacer que el servidor envíe undocumento de XML que contenga todos los instructores potenciales de medio tiempo para la selección. Hay que usar8. A los de Clancy les interesa una salida gráfica para su DSS. Desean ver una comparación gráfica de la cantidad deuniformes de cada estilo que se venden al año.a. Seleccione un estilo de gráfico apropiado y diseñe un gráfico para la pantalla de salida que incorpore los siguientesdatos:Militar completo(porcentaje del total) Semi militar Formal Casual2005 50 20 20 102006 55 15 20 102007 60 15 15 102008 62 15 15 82009 65 10 15 10www.xlibros.com
CAPÍTULO 11 • DISEÑO DE UNA SALIDA EFECTIVA 365el documento de XML para llenar una lista desplegable con los nombres de los instructores. Al hacer clic en el nombrede un instructor debe aparecer información sobre ese instructor potencial. Decida qué información debe incluir paraayudar al decano a tomar una decisión sobre el instructor que debe contratar (Sugerencia: Tal vez los instructores demedio tiempo puedan enseñar sólo en ciertos días o sólo en la mañana, tarde o noche.).PROYECTOS EN GRUPO1. Haga una sesión de lluvia de ideas con los miembros de su equipo sobre los tipos de salida más apropiados para unavariedad de ejecutivos y gerentes de alto nivel de Dizzyland, un gran parque de diversiones en Florida. Incluya una listade entornos o situaciones de toma de decisiones y los tipos de salida. Describa en un párrafo por qué el grupo sugirióopciones específicas para la salida.2. Haga que cada miembro del grupo diseñe una pantalla o formulario de salida para las situaciones de salida que enlistó enel proyecto en grupo 1 (use Microsoft Visio, una herramienta CASE o un formulario de diseño en papel para completarcada pantalla o formulario).3. Cree un tablero de control para los gerentes de Dizzyland del proyecto en grupo 1.4. Diseñe un sitio Web, ya sea en papel o mediante el uso de software con el que esté familiarizado, para Dizzyland delproyecto en grupo 1. Aunque puede bosquejar en papel los documentos o gráficos para tres niveles de páginas y loshipervínculos requeridos, cree el prototipo de una página de inicio para Dizzyland; indique los hipervínculos en dondesea apropiado. Obtenga retroalimentación de otros grupos en su clase y modifique su diseño de manera acorde. Describaen un párrafo cómo es que diseñar un sitio Web difiere del diseño de pantallas para otros sistemas en línea.5. Explore el sitio Web de Joomla! En www.joomla.org. ¿Cómo podría esta aplicación de código fuente abierto ayudarle aimplementar sus diseños del problema 4? Sintetice sus hallazgos en un párrafo. Use la Web para buscar otro CMS yutilice un párrafo para compararlo con Joomla! Asegúrese de incluir el costo, la facilidad de uso, el soporte y ladisponibilidad en su comparación.6. Use la lluvia de ideas para desarrollar un nuevo conjunto de widgets (gadgets) para aumentar la productividad. Haga unalista con las cinco mejores ideas para nuevos wigdets.BIBLIOGRAFÍA SELECCIONADADavenport, T. H. “Saving IT’s Soul: Human-Centered Information Management”. Harvard Business Review, marzo-abril 1994,pp. 119-131.Davis, G. B. y H. M. Olson. Management Information Systems, Conceptual Foundations, Structure, and Development, 2ª. Edi-ción. Nueva York: McGraw-Hill, 1985.Kendall, K. E. y J. E. Kendall. “DSS Systems Analysis and Design: The Role of the Analyst as Change Agent from Early DSSto Mashups”, en Handbook of Decision Support Systems 2, editado por F. Burstein y C. W. Holsapple, pp. 293-312. Berlin:Springer, 2008.Souders, S. “High Performance Web Sites”. Communications of the ACM, Vol. 51, Núm. 12, diciembre de 2008, pp. 36-41.www.xlibros.com
366 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOE P I S O D I O 1 1CASO DE LA CPUALLEN SCHMIDT, JULIE E. KENDALL Y KENNETH E. KENDALLElaborar informes con base en las salidas“Vamos a crear las especificaciones de la salida y después recorreremos al revés los diagramas de UML y el flujo de datos paradeterminar los datos de entrada correspondientes”, dice Anna durante su siguiente reunión con Chip.“Desde luego”, asiente Chip.La salida se separó en dos categorías: informes y pantallas. Los informes se definieron con más detalle como informesexternos, tales como NOTIFICACIÓN DE SOFTWARE DE USUARIO (USER SOFTWARE NOTIFICATION) o los informes in-ternos tales como LISTADO DE INVENTARIO DE HARDWARE (HARDWARE INVENTORY LISTING). Cada informe seclasificó a su vez como detallado, por excepción o sintetizado.Con base en las conversaciones con Paige Prynter, los analistas piensan que el INFORME DE INVERSIÓN DE HARD-WARE (HARDWARE INVESTMENT REPORT) tiene la prioridad más alta. Se necesita lo más pronto posible debido a que elproceso de presupuesto llegará pronto a una fase crítica y hay muchas solicitudes de nuevo hardware, así como actualizacionespara el equipo existente.El proceso utilizado para crear el INFORME DE INVERSIÓN DE HARDWARE (HARDWARE INVESTMENT RE-PORT) es similar al proceso para crear todos los informes. Chip examina los diagramas de flujo de datos para el nuevo sistemay localiza el flujo de datos identificado como INFORME DE INVERSIÓN DE HARDWARE (HARDWARE INVESTMENTREPORT). Al hacer doble clic en el flujo de datos aparece la entrada en el repositorio para este informe.“Estoy realmente feliz de que nos hayamos tomado el tiempo de documentar los prototipos de los informes y las pantallasa la hora de crear los diagramas de flujo de datos”, recalca Chip. “Puedo identificar con facilidad los elementos requeridos paraproducir el informe”.Chip examina el repositorio para ver los detalles de cada elemento.“Esto es magnífico”, exclama Chip. “Fue una buena idea definir todos los elementos mientras aprendíamos sobre ellos”.Después Chip procede a crear un informe de ejemplo mediante el uso de Microsoft Access. Después del primer borrador,Chip usa la herramienta Print Preview (Vista previa de impresión) para obtener una vista previa del informe.“Hmm”, murmura Chip. “Algunos de los campos necesitan volver a ordenarse y el espaciamiento horizontal necesita al-gunos ajustes”.Chip modifica el diseño y lo vuelve a revisar. Para el tercer intento, el informe está en su forma final. El siguiente paso escrucial: Chip pide a Paige que revise el informe y realice las modificaciones que desee. Chip le pregunta: “¿Hay alguna columnaadicional u otros datos faltantes que mejorarían la utilidad del informe? ¿Son todos los datos del informe necesarios?”.Paige estudia la salida durante unos minutos y comenta: “Son necesarios los subtotales para cada MARCA (BRAND), inclu-yendo el NÚMERO DE EQUIPOS (NUMBER OF MACHINES) y los totales generales. Recibimos solicitudes de distintos tiposde máquinas, y conocer la cantidad de cada máquina solicitada nos puede ayudar a determinar lo que vamos a comprar”.1/04/2010 Informe de inversión de hardware Página 1 de 1Nombre de marca Modelo Númerode máquinasTotalinvertidoXxxxxxxxxxxx Xxxxxxxxxxxxxxxxxx 3 $29,997.00Subtotal de marca 3 $29,997.00Xxxxxxxxxxxxxx Xxxxxxxxxxxxxxxx 4 $39,996.00Xxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxx 2 $19,998.00Subtotal de marca 6 $59,994.00Xxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxx 3 $29,997.00Xxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxxxx 11 $82,992.00Subtotal de marca 14 $112,989.00Total general 23 $202,980.00FIGURA E11.1Salida de ejemplo del INFORMEDE INVERSIÓN DEHARDWARE (HARDWAREINVESTMENT REPORT).www.xlibros.com
CAPÍTULO 11 • DISEÑO DE UNA SALIDA EFECTIVA 367Chip regresa a su computadora y realiza los cambios necesarios. En la figura E11.1 se muestra el ejemplo final del IN-FORME DE INVERSIÓN DE HARDWARE (HARDWARE INVESTMENT REPORT). Paige revisa de nuevo esta versión yfirma en el diseño para indicar que está completo.La lógica para este informe sintetizado se describe en una especificación de proceso. La tabla COMPUTER (COMPUTADORA)se ordena por MODELO (MODEL) dentro de MARCA (BRAND). Los totales se acumulan para cada MARCA y MODELO. Cuandocambia la MARCA o el MODELO, se imprime una línea en el informe. Cuando ocurre un cambio en la MARCA, se imprimen losSUBTOTALES DE MARCA (BRAND SUBTOTALS). Los TOTALES DE MARCA (GRAND TOTALS) se imprimen después deprocesar todos los registros.Anna pasa cierto tiempo hablando con Cher Ware sobre sus necesidades de informes. Se describen varios informes impresos cuandoCher hace la pregunta: “¿Recibiré informes en línea que pueda ver rápidamente y que contengan la información más reciente?”.La discusión que le sigue a la pregunta genera la creación de varias consultas.¿Cómo le gustaría ver las categorías de software?” pregunta Anna. “¿Le gustaría ver todo el software en una sola pantallaextensa desplazable?”.“Bueno, me gustaría tener alguna manera de buscar una categoría y después mostrar todo el software disponible para esacategoría”, responde Cher. “También sería útil poder pasar a la categoría anterior y la siguiente”.Anna crea la pantalla SOFTWARE POR CATEGORÍA (SOFTWARE BY CATEGORY) mediante un formulario de Mi-crosoft Access, el cual se muestra en la figura E11.2. Hay un botón para buscar registros, así como botones para pasar a lascategorías anterior y siguiente. En el área inferior de la pantalla hay un área para mostrar los diversos paquetes de software parala categoría. El campo SISTEMA OPERATIVO (OPERATING SYSTEM) se almacena como un código en la correspondientetabla de la base de datos y se convierte en la descripción del código en la pantalla.Anna muestra a Chip y a Cher la pantalla completa. “Estoy impresionada”, exclama Cher. “¡Es exactamente lo que necesito!”En ese momento entra Hy Perteks. “¿Qué está pasando?”, pregunta. Después de ver la consulta, comenta: “Me gustaríaque desarrollaran algunas páginas Web para las clases de capacitación”.¿Qué tiene en mente?”, pregunta Chip.“Bueno, he estado pensándolo”, le responde Hy. “Imagino que sería útil para los maestros y el personal poder buscar lainformación sobre los cursos de software que planeamos ofrecer. Después podríamos agregar un formulario Web para que seinscribieran en los cursos”.“Sería divertido trabajar en eso”, comenta Chip. “Podríamos crear un vínculo a la página desde nuestros menús de Soportede tecnología (Technology Support)”.“Yo también quiero participar”, responde Anna. “¿Qué le gustaría en la página?”.“Me gustaría crear una página Web que muestre una lista de lo cursos, incluyendo el nivel, como principiante o intermedio,y las fechas de inicio de cada curso”, le responde Hy.Chip y Anna se ponen a trabajar en la página Web. Los campos se identifican y se agrupan en el flujo de datos CLASESDE CAPACITACIÓN QUE SE OFRECEN (TRAINING CLASSES OFFERED), el cual se muestra en la pantalla de VisibleAnalyst de la figura E11.3. Observe que se incluye la dirección Web como alias. Anna crea la página Web de intranet final, quese muestra en la figura E11.4. Chip y Hy revisan la página.“Me gustan los menús en la parte superior de la página y el submenú que se despliega debajo de ese menú al pasarle elratón por encima, para desplegar más opciones del menú”, comenta Chip.“El calendario es muy útil para que el personal vea los cursos que están programados por fecha, con botones para cambiarel mes y el año”, comenta Hy. “Es muy conveniente que cambien los cursos en forma dinámica cuando cambia el mes, día oaño. El usuario tendrá una experiencia sin complicaciones”.FIGURA E11.2Pantalla SOFTWARE PORCATEGORÍA (SOFTWARE BYCATEGORY) de MicrosoftAccess.www.xlibros.com
368 PARTE IV • LOS FUNDAMENTOS DEL DISEÑO“Sí, y creo que también es muy bueno permitir al personal modificar la forma en que aparecen los datos. A muchos miem-bros del personal les gusta ver los cursos que se ofrecen en su campus”, comenta Chip.“Agregaríamos algo de distinción si incluyéramos una imagen de la mascota”, comenta Hy, “y el lema de la universi-dad”.“Me pondré a trabajar en ello”, responde Anna. “Realmente son buenas sugerencias”.Después de un tiempo, terminan la página Web final y Hy la aprueba.“Voy a enviar un email a todos los maestros y el personal, junto con un vínculo sobre nuestra ‘Nueva y mejorada’ páginaWeb”, comenta Hy. “Gracias por incluir mi dirección de correo electrónico. Será de utilidad para facilitar el proceso de registropara los cursos y contestar cualquier pregunta. ¡Creo que realmente estamos progresando!”.Para realizar los siguientes ejercicios, puede diseñar el informe o pantalla mediante formularios de diseño, o crearlos através de cualquier procesador de palabras con el que esté familiarizado. Los campos y demás información relacionada con losinformes se incluyen en las entradas del repositorio de flujo de datos de Visible Analyst o en una página Web que contiene unacopia del repositorio. La página Web contiene vínculos a los demás elementos en el repositorio para facilitar el proceso de veruna entrada del repositorio y saltar hacia otra entrada para atrás o para adelante. En cada ejercicio se enlistan los nombres parael flujo de datos.Clases de capacitación que se ofrecenUna página de intranet que indica las próximas clases de capacitación aofrecer por medio del Centro de información. Mostrar todas las clases paracada paquete de software.Titulo +Version +Nombre sistema operativo +{Nombre clase} +{Duracion clase} +{Fecha inicial}La página principal debería indicar el software, con vínculos a lasclases de capacitación y las fechas de inicio para el software. Incluirla dirección de correo electrónico del instructor de capacitación en lapágina principal para consultas sobre la capacitación.FIGURA E11.3Pantalla del flujo de datosCLASES DE CAPACITACIÓNQUE SE OFRECEN (TRAININGCLASSES OFFERED).FIGURA E11.4Una página Web habilitada conAjax para la Central PacificUniversity.www.xlibros.com
CAPÍTULO 11 • DISEÑO DE UNA SALIDA EFECTIVA 369Se crearon los informes y formularios en Microsoft Access correspondientes. Toda la información está presente en la basede datos de Microsoft Access; usted sólo tiene que modificar los informes y pantallas existentes para producir las versionesfinales. Para hacer las modificaciones, haga clic en el informe o pantalla deseada y después haga clic en el botón Design (Di-seño). Puede realizar las siguientes modificaciones. El Page Header (Encabezado de página) contiene los encabezados de lascolumnas. El área Detail (Detalle) contiene los campos a imprimir para el informe.Haga clic en un campo para seleccionarlo. Haga clic en varios campos mientras oprime la tecla Mayús paraseleccionarlos.Arrastre un campo (o campos) seleccionado para moverlo.Haga clic en una de las cajas pequeñas que rodean el campo para cambiar su tamaño.Seleccione varios campos, haga clic en Format (Formato) y después en una de los siguientes opciones:Align (Alinear), para alinear todos los campos con el campo superior, izquierdo, etc.Size (Ajustar tamaño), para hacer todos los campos iguales al campo más ancho, más alto, etcétera.Horizontal Spacing (Espacio horizontal), para hacer el espacio horizontal igual, aumentarlo o reducirlo.Vertical Spacing (Espacio vertical), para hacer el espacio vertical igual, aumentarlo o reducirlo.EJERCICIOSE-1. Use Microsoft Access para ver el INFORME DE INVERSIÓN DE HARDWARE (HARDWARE INVESTMENT RE-PORT). Si está familiarizado con Microsoft Access, utilice la opción de menú File/Export... (Archivo/Exportar...)para guardar el informe como página Web. Cuando se abra el cuadro de diálogo Export (Exportar), haga clic en la listadesplegable Save As Type (Guardar como) y seleccione HTML Documents (Documentos HTML).E-2. Chip, Dot y Mike participaron en varias sesiones de lluvias de ideas que produjeron como resultado los esquemas devarios informes. Diseñe (o modifique mediante Access) el INFORME MAESTRO DE HARDWARE (HARDWAREMASTER REPORT). Este informe es extenso, por lo que tendrá que ser cuidadoso para incluir todos los datos en el áreadel informe. Tal vez quiera tener varias líneas de detalles para cada registro. Imprima el informe completo.E-3. Después de reunirse con Cher Ware y Hy Perteks para hablar sobre las necesidades de los informes, Anna identificó loscampos para el INFORME DE NUEVO SOFTWARE INSTALADO (NEW SOFTWARE INSTALLED REPORT) par-cialmente completo. Diseñe (o modifique) el informe para incluir los elementos encontrados en la entrada en el reposi-torio de flujo de datos. ¿Es el informe detallado o sintetizado? Describa en un párrafo la lógica que usted cree que debeusar el programa para producir informes.E-4. Tanto Dot como Mike necesitan saber cuando se reciban nuevas computadoras. Cree el INFORME DE RECEPCIÓN DENUEVAS COMPUTADORAS (NEW COMPUTER RECEIVED REPORT). El flujo de datos INFORME DE COMPU-TADORAS RECIBIDAS (COMPUTER RECEIVED REPORT) contiene los elementos necesarios.E-5. Diseñe el INFORME MAESTRO DE SOFTWARE (SOFTWARE MASTER REPORT) que contiene información perti-nente para ayudar a Cher y a Hy a localizar las diversas copias de cualquier paquete de software con facilidad. Los ele-mentos necesarios para producir el informe se encuentran en el flujo de datos del INFORME MAESTRO DE SOFTWARE(SOFTWARE MASTER REPORT).Hay que imprimir en grupo los elementos TÍTULO (TITLE), VERSIÓN (VERSION), NOMBRE DEL SISTEMAOPERATIVO (OPERATING SYSTEM NAME), EDITOR (PUBLISHER), CATEGORÍA (CATEGORY), PRIMERNOMBRE (FIRST NAME) y APELLIDO PATERNO (LAST NAME) del experto de software. Se deben incluir totalespara cada combinación de TÍTULO/SISTEMA OPERATIVO/VERSIÓN. Imprima el diseño del informe completo.E-6. Diseñe el LISTADO DE INVENTARIO DE HARDWARE (HARDWARE INVENTORY LISTING) que muestre lascomputadoras disponibles en cada sala de cada campus. El campo CAMPUS deberá ser la DESCRIPCIÓN DEL CAM-PUS (CAMPUS DESCRIPTION) y no el código que representa al campus.E-7. Diseñe el INFORME DE COMPUTADORAS INSTALADAS (COMPUTER INSTALLED REPORT) que muestre lascomputadoras personales instaladas en cada sala. Use la DESCRIPCIÓN DEL CAMPUS e imprima por grupos en basea DESCRIPCIÓN DEL CAMPUS y UBICACIÓN DE SALA (ROOM LOCATION).E-8. Use Microsoft Access para ver el informe de pantalla SOFTWARE POR CATEGORÍA (SOFTWARE BY CATEGORY).Haga clic en el botón Find (Buscar) y localice CASE toolset (Conjunto de herramientas CASE). Haga clic en losbotones Next (Siguiente) y Previous (Anterior) para ver los elementos siguiente y anterior de Software Categories(Categorías de software).E-9. Diseñe el informe de pantalla SOFTWARE POR MÁQUINA (SOFTWARE BY MACHINE). Consulte los elementos enla entrada en el repositorio de flujo de datos.E-10. Diseñe el INFORME DE PROBLEMAS DE COMPUTADORAS (COMPUTER PROBLEM REPORT). Este informemuestra todas las computadoras que tienen una gran cantidad de reparaciones o un costo extenso de reparación. Consultelos elementos en la descripción del repositorio para el flujo de datos o modifique el informe de Microsoft Access.E-11. Diseñe o modifique el INFORME DE INSTALACIÓN (INSTALLATION REPORT). Consulte los elementos en la en-trada del repositorio para el flujo de datos. Este informe muestra las computadoras que se recibieron hace poco y queestán disponibles para la instalación.www.xlibros.com
370 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOE-12. Diseñe el INFORME DE NUEVAS COMPUTADORAS QUE SE RECIBIERON (NEW COMPUTER RECEIVEDREPORT). Consulte los elementos en la descripción en el repositorio para el flujo de datos o modifique el informe deMicrosoft Access. Este informe sintetizado muestra el número de computadoras de cada marca y modelo. Hay que des-empacar estas computadoras para instalarlas en las salas.E-13. Diseñe o modifique el INFORME DE MANTENIMIENTO PREVENTIVO (PREVENTIVE MAINTENANCE RE-PORT). Consulte los elementos en la entrada del repositorio para el flujo de datos. Este informe muestra las computado-ras que necesitan mantenimiento preventivo.E-14. Diseñe el INFORME DE REFERENCIAS CRUZADAS DE SOFTWARE (SOFTWARE CROSS REFERENCE RE-PORT). Consulte los elementos en la descripción en el repositorio para el flujo de datos o modifique el informe de Mi-crosoft Access. Este informe muestra la computadora en la que está instalado cada paquete de software. Se imprimen engrupo los elementos TÍTULO (TITLE), VERSIÓN (VERSION), SIGNIFICADO DE SISTEMA OPERATIVO (OPE-RATING SYSTEM MEANING) y EDITOR (PUBLISHER). Las líneas de detalle bajo el grupo contienen datos quemuestran la máquina, campus de instalación y sala.E-15. Diseñe o modifique el INFORME DE PEDIDOS PENDIENTES DE COMPRAS DE COMPUTADORAS (OUTSTAN-DING COMPUTER PURCHASE ORDERS REPORT). Consulte los elementos en la entrada del repositorio para el flujode datos. Este informe se debe producir para todos los registros ORDEN DE COMPRA (PURCHASE ORDER) quetengan un código de orden de compra de M101, el cual representa a las computadoras, con la condición adicional de quela CANTIDAD ORDENADA (QUANTITY ORDERED) en el registro debe ser mayor que la CANTIDAD RECIBIDA(QUANTITY RECEIVED). Indique en un párrafo si este informe es sintetizado, por excepción o detallado y explique elpor qué.E-16. Diseñe el INFORME DE INVERSIÓN DE SOFTWARE (SOFTWARE INVESTMENT REPORT). Consulte los ele-mentos en la descripción en el repositorio para el flujo de datos o modifique el informe de Microsoft Access.E-17. Diseñe la página Web REFERENCIAS CRUZADAS DE SOFTWARE (SOFTWARE CROSS REFERENCE). Consultelos elementos de la página Web en la descripción en el repositorio de software para el flujo de datos del INFORME DEREFERENCIAS CRUZADAS DE SOFTWARE (SOFTWARE CROSS REFERENCE REPORT). Esta página Webmuestra las computadoras en las que está instalado cada paquete de software. Incluya una lista desplegable de softwareque permita al usuario seleccionar un paquete de software. El diseño usa Ajax para actualizar la lista de computadorasen la página Web que contiene el software y sus ubicaciones.E-18. Diseñe la página Web LISTADO DE INVENTARIO DE HARDWARE (HARDWARE INVENTORY LISTING), quemuestre las computadoras disponibles en cada sala de cada campus. El CAMPUS se selecciona de una lista desplegableque muestra la DESCRIPCIÓN DEL CAMPUS (CAMPUS DESCRIPTION). Cuando el usuario selecciona el nombrede un campus de la lista desplegable, la página Web usa técnicas de Ajax para llenar la lista desplegable de salas delcampus. Al seleccionar una sala, la página Web usa Ajax para mostrar las máquinas ubicadas en cada sala. Use el repo-sitorio para el LISTADO DE INVENTARIO DE HARDWARE (HARDWARE INVENTORY LISTING) sin el númerototal de máquinas en campus o el número total de máquinas.Los ejercicios en los que se antepone un icono www indican material de valor agregado disponible en el sitio Web www.pearsonhighered.com/kendall. Los estudiantes pueden descargar archivos de ejemplo de Microsoft Visio o un proyecto de Visible Analyst, además de una base dedatos de Microsoft Access que pueden usar para completar los ejercicios.www.xlibros.com
371C A P Í T U L O 1 2Diseño de una entrada efectivaOBJETIVOS DE APRENDIZAJEAl completar este capítulo usted podrá:1. Diseñar formularios de entrada funcionales para los usuarios de sistemas empresariales.2. Diseñar pantallas de entrada atractivas para los usuarios de sistemas de información.3. Diseñar formularios de entrada útiles para las personas que interactúan en la Web.4. Diseñar páginas de entrada útiles para los usuarios de intranets y de Internet.Los usuarios merecen una salida de calidad. En buena medida, la calidad de laentrada del sistema determina la calidad de su salida. Es vital que los formula-rios de entrada, pantallas y documentos Web interactivos se diseñen teniendoen cuenta esta relación crítica.Los formularios de entrada, las pantallas y los formularios interactivos parallenar a través de la Web bien diseñados deben cumplir con los objetivos de efectividad, precisión, facilidadde uso, consistencia, simpleza y atracción. Podemos alcanzar todos estos objetivos debemos apegarnos alos principios básicos de diseño, conocer lo que se requiere como entrada para el sistema y comprender laforma en que los usuarios responden a los distintos elementos de los formularios y pantallas.La efectividad significa que los formularios de entrada, las pantallas de entrada y los formularios allenar en Web sirvan a propósitos específicos para los usuarios del sistema de información, mientras quela precisión se refiere a la certeza que el diseño proporcione para el llenado adecuado. La facilidad de usosignifica que los formularios y pantallas sean simples, de manera tal que el usuario requiera el mínimotiempo posible para descifrar su estructura. La consistencia implica que todos los formularios de entrada,sean pantallas de entrada o formularios a llenar en Web, agrupen los datos de manera similar de unaaplicación a otra, mientras que simpleza se refiere a mantener esos mismos diseños ordenados deuna manera que el usuario enfoque su atención en ellos. En cuanto a la atracción, significa que los usua-rios disfruten al usar los formularios de entrada debido a su diseño agradable.DISEÑO DE BUENOS FORMULARIOSEl analista de sistemas debe ser capaz de diseñar un formulario completo y útil; los formulariosinnecesarios desperdician los recursos de una organización.Los formularios son instrumentos importantes para dirigir el curso de trabajo. Son documentosimpresos que las personas deben llenar de manera estandarizada. Los formularios solicitan y captu-ran la información requerida por los miembros de la organización que, a menudo, se introducirá en lacomputadora; por medio de este proceso, sirven como documentos fuente para los usuarios o constitu-yen el origen de los datos que los humanos deben introducir en aplicaciones de comercio electrónico.Para diseñar formularios útiles debemos tener en cuenta los siguientes cuatro lineamientos dediseño de formularios:1. Que los formularios sean fáciles de llenar.2. Que cumplan con el propósito para el que se diseñaron.3. Que su diseño contribuya a que se completen con precisión.4. Que sean atractivos.En las siguientes secciones veremos cada uno de estos cuatro lineamientos por separado.www.xlibros.com
372 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOHacer que los formularios sean fáciles de llenarPara reducir los errores, agilizar el proceso de completarlos y facilitar la introducción de los datos, es esencial quelos formularios sean fáciles de llenar. El costo de los formularios es mínimo si se compara con el del tiempo que in-vierten los empleados en llenarlos y después en introducir los datos en el sistema de información. Con frecuenciaes posible eliminar el segundo paso mediante el uso del envío electrónico, en el que los mismos usuarios teclean losdatos, desde los sitios Web establecidos para transacciones de comercio electrónico o solicitud de información.FLUJO DEL FORMULARIO Un formulario con un flujo apropiado reduce el tiempo y esfuerzo que invierten losempleados en llenarlo. Los formularios deben fluir de izquierda a derecha y de arriba abajo. Un flujo ilógicorequiere tiempo adicional y es frustrante. Un formulario en el que las personas tienen que pasar directamente a laparte inferior y después saltar hacia la parte superior para terminarlo exhibe un mal flujo.SIETE SECCIONES DE UN FORMULARIO Hay un segundo método que facilita a las personas llenar los formulariosen forma correcta; éste se enfoca en agrupar la información en forma lógica. Las siete secciones principales deun formulario son:1. Encabezado.2. Identificación y acceso.3. Instrucciones.4. Cuerpo.5. Firma y verificación.6. Totales.7. Comentarios.Lo ideal es que estas secciones aparezcan agrupadas como en el recibo de gastos de empleado de Bakerloo Bro-thers, de la figura 12.1. Observe que las siete secciones abarcan la información básica requerida en la mayoría delos formularios. El tercio superior del formulario se dedica a tres secciones: encabezado, sección de identificacióny acceso, y sección de instrucciones.Por lo general, la sección del encabezado incluye el nombre y la dirección de la empresa que creó el formu-lario. La sección de identificación y acceso incluye códigos que se pueden usar para archivar el informe y obte-ner acceso al mismo en una fecha posterior (en el capítulo 13 veremos con detalle cómo acceder a la informacióncon claves especiales en una base de datos). Esta información es muy importante cuando una organización debearchivar el documento durante varios años. La sección de instrucciones indica cómo llenar el formulario y adónde se debe enviar al terminar de llenarlo.La parte media es su cuerpo, el cual representa aproximadamente la mitad del formulario. En esta parte, lapersona que lo llena debe poner más detalle y elaboración. El cuerpo es la parte del formulario que probable-mente contendrá datos explícitos y variables.El tercio inferior del formulario está compuesto de tres secciones: firma y verificación, totales y comenta-rios. Requerir totales finales y un resumen de los comentarios es una forma lógica de que la persona que llena elformulario termine de hacerlo.Hay una característica más a resaltar sobre el formulario de Bakerloo Brothers. El diseño del formularioprovee una doble verificación interna, con totales de columnas y totales de filas que deben dar como resul-tado el mismo número. Si los totales de fila y de columna no dan el mismo resultado, el empleado que estállenando el formulario sabrá que hay un problema y podrá corregirlo en ese instante. Se evita un error y elempleado puede recibir el reembolso de la cantidad pendiente; ambos resultados se atribuyen a un diseño ade-cuado del formulario.LEYENDAS El uso de leyendas claras es otra técnica para facilitar el trabajo de llenar un formulario. Las leyendasindican a la persona que completa el formulario lo que debe poner en una línea, espacio o cuadro en blanco. Enla figura 12.2 se muestran varias opciones para las leyendas. Se muestran dos tipos de leyendas de línea, dostipos de leyendas de verificación y ejemplos de una leyenda enmarcada y una leyenda de tabla.La ventaja de poner la leyenda debajo de la línea es que hay más espacio en la línea para los datos; la des-ventaja es que algunas veces no está claro cuál línea está asociada con la leyenda, si la de arriba o la de abajo.Las leyendas de línea pueden estar a la izquierda de los espacios en blanco, a la misma altura, o se puedenimprimir debajo de la línea en la que se van a introducir los datos.Otra forma de usar leyendas es proveer un cuadro para los datos en vez de una línea. Las leyendas se pue-den colocar en el interior, encima o debajo del cuadro. Los cuadros en los formularios ayudan a las personas aintroducir los datos en el lugar correcto y facilitan a la persona que recibe el formulario el proceso de leerlo. Laleyenda debe usar un tamaño de letra pequeño, de manera que no domine el área de entrada. Es posible incluirpequeñas marcas de verificación en el cuadro si los datos se van a introducir en un sistema computarizado. Siwww.xlibros.com
CAPÍTULO 12 • DISEÑO DE UNA ENTRADA EFECTIVA 373no hay suficiente espacio en un registro para los datos, la persona que llena el formulario (en vez del opera-dor que introducirá los datos) tiene la libertad de determinar cómo se deben abreviar los datos. Las leyendastambién pueden incluir pequeñas notas aclaratorias para ayudar al usuario a introducir la información correcta-mente, como Fecha (MM/DD/AAAA) o Nombre completo (Apellido paterno, apellido materno, Nombre(s)).No importan los estilos de leyendas de línea que se elijan, es imprescindible emplearlos de manera consis-tente (por ejemplo, sería confuso tratar de llenar un formulario diseñado con leyendas tanto arriba como debajode las líneas).Las leyendas de verificación son una mejor opción cuando es necesario restringir las opciones de respuesta.Observe la lista de métodos de viaje que se muestran para el ejemplo de verificación vertical en la figura anterior. Sise va a rembolsar los gastos del empleado en el viaje de negocios sólo para los métodos de viaje de la lista, un sis-tema de verificación es más conveniente que una línea en blanco. Este método tiene la ventaja adicional de recordara la persona que verifica los datos que debe buscar un talón de boleto de avión o cualquier otro recibo relacionado.Una leyenda de verificación horizontal también es mejor opción que una leyenda de línea cuando la infor-mación requerida es rutinaria y constante. Como ejemplo podemos citar un formulario que solicita los serviciosde uno de los siguientes departamentos: Laboratorio fotográfico, Departamento de impresión, Mantenimiento oRECIBO DE GASTOS DE EMPLEADOSolicitante: No escriba en las áreassombreadas.Nombre completo del empleadoDepartamento Número de salaNúmero de ID del empleadoENLISTE LOS GASTOS PARA CADA DÍA POR SEPARADO. ADJUNTE RECIBOS PARA LOS GASTOS EXCEPTOALIMENTOS, TAXIS Y ARTÍCULOS MISCELÁNEOS MENORES A $3.00. DETALLE TODOS LOS GASTOS MISCELÁNEOS.Fecha/ /LugarCiudad, EstadoGastos dealimentaciónGastos dehospedaje Millas CostoAutomóvilDescripción CostoMisceláneos CostototalCostodel taxiCertifico que toda la información anterior es correctaFormulario BB-104 01/2009Firma del solicitanteAprobado porFechaFechaTotalesBakerloo BrothersNúmero de reciboSe realizó una acción sobre:FIGURA 12.1En un formulario bien diseñadohay siete secciones que ayudan afomentar que se complete.www.xlibros.com
374 PARTE IV • LOS FUNDAMENTOS DEL DISEÑONombreNombre Apellido paternoApellido paternoTítulo Teléfono ( ) NombreTítuloTítuloMarque el método de viaje:AviónTrenAuto de la empresaAuto personalTeléfonoApellido paternoTeléfono Laboratorio fotográficoCantidadDepartamento de impresión Mantenimiento ProvisionesUnidad Descripción de artículo Costo del usuario Costo expandidoSubtotalImpuesto de ventaTotalLeyenda de líneaLeyenda debajode la líneaLeyenda enmarcadaLista de verificaciónvertical Lista de verificaciónhorizontalLeyenda de tablaFIGURA 12.2Alternativas principales para usarleyendas.Provisiones. Estos departamentos proveen servicios de rutina a otros en la organización y no es probable que va-yan a cambiar rápidamente.Las leyendas de tabla funcionan bien en el cuerpo de un formulario donde se requieren detalles. Cuandoun empleado llena de manera apropiada un formulario con leyendas de tabla, está creando una tabla para la si-guiente persona que recibirá el formulario, con lo cual ayuda a organizar los datos en forma coherente.También se puede utilizar con efectividad una combinación de leyendas: por ejemplo, leyendas de tabla paraespecificar categorías como cantidad, y leyendas de línea para indicar dónde deben estar el subtotal, los impues-tos de venta y el total. Como las distintas leyendas sirven para propósitos diferentes, por lo general es necesarioemplear varios estilos de leyendas en cada formulario.Cumplir con el propósito previstoLos formularios se crean para servir a uno o más propósitos en los procesos de registrar, procesar, almacenary recuperar la información para las empresas. Algunas veces es conveniente proveer distinta información a loswww.xlibros.com
CAPÍTULO 12 • DISEÑO DE UNA ENTRADA EFECTIVA 375diferentes departamentos o usuarios y compartir al mismo tiempo cierta información básica. Aquí es donde sonútiles los formularios especializados.El término formulario especializado también se puede referir sólo a la manera en que la papelería preparalos formularios. Algunos ejemplos de formularios especiales de papelería son los formularios de tantos múltiplesque se utilizan para crear triplicados instantáneos de los datos, los formularios de alimentación continua que pue-den pasar por la impresora sin necesidad de intervención humana y los formularios perforados que dejan un talóncomo registro cuando se separan.Asegurar que se llenen en forma precisaPor lo general, las tasas de errores asociadas con la recolección de los datos disminuyen de manera considerablecuando los formularios se diseñan de tal forma que sea obvia la manera en que deben completarse con precisión.El diseño es importante para asegurar que las personas hagan lo correcto con el formulario siempre que lo uti-licen. Cuando los empleados de servicio, como los que leen medidores o toman inventario, usan dispositivosportátiles para escanear o teclear los datos en el sitio apropiado, se evita el paso adicional de tener que transcribirlos datos para introducirlos en la computadora. Los dispositivos portátiles utilizan la transmisión inalámbrica ose conectan a los sistemas computarizados más grandes para poder descargar los datos que el trabajador de servi-cio almacenó en ellos. No es necesario transcribir lo que ocurrió en el campo.Mantener los formularios atractivosAunque dotar a los formularios de atractivo se deja al último, esto no significa que sea menos importante: sehace de esta forma debido a que para producir formularios atractivos hay que aplicar las técnicas descritasen las secciones anteriores. Los formularios estéticos atraen a las personas y éstas se sienten animadas paracompletarlos.Los formularios deben lucir ordenados. Para ser atractivos, deben solicitar la información en el orden es-perado: la convención dicta que se debe pedir nombre, dirección, ciudad, estado y código postal (y país, de sernecesario). La distribución y el flujo apropiados contribuyen al atractivo de un formulario.Utilizar distintos tipos de letra en el mismo formulario puede ser útil para que a los usuarios se les haga másatractivo llenarlo. Separar las categorías y subcategorías con líneas gruesas y delgadas también puede fomentarel interés. Los tipos de letras y los grosores de las líneas son elementos de diseño útiles para capturar la atencióny hacer que las personas se sientan con la seguridad de que llenan el formulario en forma correcta.Hay paquetes de diseño de formularios disponibles para PC. La figura 12.3 muestra cómo se puede crearformularios mediante el uso de software que permite al analista automatizar con rapidez los procesos de negociospara los que ya existen formularios en papel. El analista puede usar un conjunto de herramientas para configurarcampos, casillas de verificación, líneas, cuadros y muchas otras características. También es posible digitalizarformularios en papel para después publicarlos en la Web.FIGURA 12.3El software permite a un usuariotomar un formulario existente,escanearlo en la computadora ydefinir campos de manera que sepueda llenar fácilmente en una PC.www.xlibros.com
376 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOCómo controlar los formularios de las empresasControlar los formularios de las empresas es una tarea importante; a menudo cuentan con un especialista enformularios que se encarga de llevar el control, pero algunas veces este trabajo recae en el analista de sistemas,quien se encarga de establecer e implementar el control de los formularios.Las tareas básicas para controlar formularios incluyen asegurar que cada formulario en uso cumpla consu propósito específico para ayudar a los trabajadores a realizar sus tareas y que el propósito especificado seaintegral para el funcionamiento de la organización, de manera que se evite la duplicación de la información re-copilada y de los formularios correspondientes; diseñar formularios efectivos, decidir sobre cómo reproducirlosen la forma más económica posible y establecer procedimientos que los pongan a disposición de los empleados(cuando sea necesario) al menor costo posible. A menudo, para esto se requiere que los formularios estén dispo-nibles en Web para poder imprimirlos. Hay que incluir en cada formulario un número único y una fecha de revi-sión (mes/año), independientemente de que se llene y envíe en forma manual o electrónica. Esto ayuda a que losusuarios sean organizados y eficientes.DISEÑO DE BUENOS FORMULARIOS WEB Y DE PANTALLAGran parte de lo dicho sobre el diseño de buenos formularios se puede transferir al diseño de pantallas, sitios ypáginas Web. Una vez más, el usuario debe permanecer en primer lugar en los pensamientos del analista duranteel diseño de las pantallas.Sin embargo, existen algunas diferencias por las que los analistas de sistemas se deben esforzar para tener encuenta las cualidades únicas de las pantallas, en vez de adoptar a ciegas las convenciones de los formularios depapel. Una de las principales diferencias es la presencia constante de un cursor en la pantalla, el cual orienta alusuario en cuanto a la posición actual para introducir datos. A medida que se introducen los datos en pantalla, elcursor avanza un carácter hacia delante para señalar el camino.Otra diferencia importante entre los formularios electrónicos, de Web y estáticos es que los diseñadores pue-den incluir ayuda sensible al contexto para el usuario en cualquier formulario de llenado electrónico. Esta prác-tica puede reducir la necesidad de mostrar instrucciones para cada línea, con lo cual se reduce el desorden y lasllamadas a Soporte técnico. Al usar una metodología basada en Web, el diseñador también puede aprovecharlos hipervínculos, con lo cual asegura que los formularios se llenen correctamente al dar ejemplos con hiper-vínculos de formularios llenados en forma correcta.En esta sección presentaremos los lineamientos para el diseño efectivo de pantallas. Los presentaremos enorden para ayudar en la obtención de las metas generales de diseño de la entrada: efectividad, precisión, facilidadde uso, simpleza, consistencia y atractivo.Los cuatro lineamientos para el diseño de pantallas son importantes pero no exhaustivos. Como vimos en elcapítulo 11, incluyen lo siguiente:1. Mantener la pantalla simple.2. Mantener la presentación de la pantalla consistente.3. Facilitar el movimiento del usuario entre las pantallas y páginas de visualización.4. Crear una pantalla atractiva y agradable.En las siguientes subsecciones desarrollaremos cada uno de estos lineamientos y presentaremos muchas técnicasde diseño para observar los cuatro lineamientos.Mantener la pantalla simpleEl primer lineamiento para el buen diseño de pantallas es mantener la pantalla simple. La pantalla debe mostrarsólo lo necesario para la acción específica a realizar. Para el usuario ocasional, el 50 por ciento del área de lapantalla debe contener información útil.TRES SECCIONES DE LA PANTALLA La salida de pantalla se debe dividir en tres secciones. La parte superior estáconstituida por una sección de “encabezado”: contiene los títulos de software y de archivos abiertos, menúsdesplegables e iconos que realizan ciertas tareas.La sección media se denomina el “cuerpo” de la pantalla. El cuerpo se puede usar para introducir datos; seorganiza de izquierda a derecha y de arriba hacia abajo debido a que las personas en las culturas occidentalesmueven sus ojos por una página de esta forma. Las leyendas e instrucciones se deben suministrar en esta sec-ción para ayudar al usuario a introducir los datos pertinentes en el lugar correcto. También puede haber ayudasensible al contexto disponible cuando el usuario haga clic en el botón derecho del ratón en la sección delcuerpo de la pantalla.www.xlibros.com
CAPÍTULO 12 • DISEÑO DE UNA ENTRADA EFECTIVA 377O P O R T U N I D A D D E C O N S U L T O R Í A 1 2 . 1Este formulario puede ser dañino para su saludla figura 12.C1 muestra un formulario impreso de historial mé-dico que el Dr. Mike Robe, médico familiar, hace a su recepcionistaentregar a todos los pacientes nuevos, quienes deben llenarlo antesde pasar a consulta.La recepcionista está recibiendo muchas respuestas incomple-tas o confusas, lo cual dificulta al Dr. Robe el proceso de revisar losformularios y entender por qué lo visita el nuevo paciente. Además,las malas respuestas provocan que la recepcionista tarde más tiempoen introducir los nuevos pacientes en los archivos.Rediseñe el formulario en papel tamaño carta para poder reco-lectar los datos pertinentes de una manera lógica e inofensiva.Asegúrese de que el formulario sea claro para los nuevos pacientes,fácil de leer para el Dr. Robe y adecuado para que la recepcionistaintroduzca los datos en la base de datos de pacientes, ordenada pornombre del paciente y número de Seguro social. La oficina utilizaPC conectadas por una LAN. ¿Cómo rediseñaría el formulario demanera que la recepcionista pudiera enviarlo por vía electrónica?¿Qué procedimientos de oficina tendría que cambiar?¿Alguna vez le han realizado cirugía? Sí ____ No____ De ser así, ¿cuándo?______Describa la cirugía¿Alguna vez lo han hospitalizado? ____ No____ De ser así, ¿cuándo?______¿Por qué?Complete lo siguiente .He tenido Historial familiarDiabetesProblemas cardiacosCáncerAtaquesDesmayos¿Qué inmunizaciones ha recibido?Familia: Esposa o familiar directo Relación DirecciónFecha del último examen ___/___ ¿Quién lo refirió?¿Por qué está visitando al doctor hoy?¿Sufre de dolor en este momento?_______ Constante ______ Esporádico ______¿Cuánto tiempo dura? Escriba su número de seguro social:¡IMPORTANTE! Necesitamos el número correcto de su compañía de segurosFormulario de historial médicoNombre Empleador EdadDirección CP Teléfono OficinaAseguradora Es esta [ ] su póliza [ ] la póliza de su esposaCruz azul [ ] Servicio médico estatal [ ] Otro [ ] (explique)FIGURA 12.C1Se aprecia de manera considerable su ayuda para mejorar este formulario.www.xlibros.com
378 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOLa tercera sección de la pantalla es de “comentarios e instrucciones”, y puede mostrar un menú corto de co-mandos que recuerdan al usuario aspectos básicos como cambiar de página, funciones y acciones como guardarel archivo o terminar de introducir datos. Al incluir dichos aspectos básicos los usuarios inexpertos se sientenmucho más seguros sobre su capacidad para completar la tarea.Otras maneras de mantener simple la pantalla es utilizar ayuda sensible al contexto, botones desplegablesque revelen más información y otras ventanas desplegables. Los usuarios pueden minimizar o maximizar el ta-maño de las ventanas según sea necesario. De esta manera, los usuarios empiezan con una pantalla simple y biendiseñada que pueden personalizar y controlar por medio de varias ventanas. Los hipervínculos en un formulariobasado en Web sirven para un propósito similar.Mantener la pantalla consistenteEl segundo lineamiento para el buen diseño de pantallas es mantener la pantalla consistente. Si los usuariostrabajan con formularios en papel, las pantallas deben seguir lo que se muestra en papel. Podemos mantener laconsistencia en las pantallas si ubicamos la información en la misma área cada vez que se acceda a una nuevapantalla. Además, la información que debe estar junta por lógica también se debe agrupar en forma consistente:el nombre y la dirección van juntos, pero no el nombre y el código postal. Aunque la pantalla debería tener unmovimiento natural de una región a otra, la información no se debe traslapar de un grupo a otro. No es conve-niente tener el nombre y la dirección en un área y el código postal en otra.Facilitar el movimientoEl tercer lineamiento para el buen diseño de pantallas es facilitar el proceso de pasar de una página a otra. Laregla de los “tres clics” establece que los usuarios deben ser capaces de llegar a las páginas que necesitan en tresclics de ratón o de teclado como máximo. Los formularios basados en Web facilitan el movimiento mediante eluso de hipervínculos a otras páginas Web relevantes. Otro método común de movimiento es hacer que los usua-rios se sientan como si estuvieran cambiando físicamente a una nueva página. Esta ilusión de movimiento físicoentre pantallas se puede obtener al desplazarse mediante flechas, ventanas desplegables sensibles al contexto oun cuadro de diálogo en pantalla.Diseñar una pantalla atractiva y agradableEl cuarto lineamiento para el buen diseño de pantallas es crear una pantalla atractiva para el usuario. Si los usua-rios encuentran que las pantallas son agradables, es probable que sean más productivos, necesiten menos super-visión y cometan menos errores. Las pantallas deben atraer a los usuarios y mantener su atención. Para lograreste objetivo se utilizan muchas áreas en blanco que rodean a los campos de entrada de datos, de manera quela pantalla adquiera una apariencia ordenada. Nunca hay que atiborrar un formulario de información; de igualforma, nunca hay que atiborrar una pantalla. Es mucho mejor usar varias ventanas o hipervínculos que tratar demeter todo a la fuerza en una sola página.Use flujos lógicos en el plan para las páginas que desea visualizar. Organice el material para aprovechar laforma en que las personas conceptualizan su trabajo, de manera que puedan desplazarse con facilidad por la in-formación. Con la llegada de las GUI, es posible crear pantallas de entrada muy atractivas. Mediante el uso decolor o cuadros sombreados y la creación de cuadros y flechas en tercera dimensión, es posible crear formulariosamigables y divertidos.Al considerar el uso de distintos estilos y tamaños de letras, pregúntese si realmente ayudan a que el usua-rio comprenda cómo usar la pantalla y que la apruebe. Si atraen demasiada atención hacia el aspecto visual dela pantalla o si sirven como distracción, omítalas. Tenga en cuenta que no todas las páginas Web se ven exacta-mente igual en todos los navegadores. Pruebe los prototipos de sus formularios con una variedad de combinacio-nes para ver si los usuarios declaran sus preferencias por ciertas combinaciones o si son molestas para la mayoríade ellos. Para las fuentes Web use Verdana o Arial.Utilice iconos en el diseño de las pantallasLos iconos son representaciones pictóricas en pantalla que simbolizan las acciones de computadora que losusuarios pueden seleccionar mediante el uso de ratón, teclado, lápiz óptico, pantalla táctil o palanca de juegos.Los iconos tienen funciones similares a las de las palabras y pueden reemplazarlas en muchos menús, ya que susignificado se comprende con mayor rapidez. Los dispositivos móviles como el iPhone y el iPod de Apple hanpopularizado el uso de iconos en las pantallas táctiles y han hecho de esta interfaz algo familiar para muchasempresas y otros usuarios.Hay algunos lineamientos para el diseño de iconos efectivos. Las formas deben ser reconocidas de inme-diato, para que el usuario no tenga que dominar un nuevo vocabulario. Hay varios iconos que la mayoría de losusuarios ya conoce. El uso de iconos estándar puede explotar rápidamente esta reserva de significado común.www.xlibros.com
CAPÍTULO 12 • DISEÑO DE UNA ENTRADA EFECTIVA 379Apellido paterno del paciente Primer nombre Inicial segundo nombreEstación de inspección Fecha del examenNúmero de paciente Número de seguro socialPrimer examen Número de reclamaciónSECCIÓN DE AUDIOMETRÍA VOCAL Comentarios [UMBRAL DE RECEPCIÓN DE VOZOído derecho [ ]Oído izquierdo [ ] Referido por [ ]DISCR. OÍDO DERECHO. Motivo de referencia% [ ] Enmascaramiento [ ]% [ ] Enmascaramiento [ ]Audiólogo examinadorDISCRIM. OÍDO IZQUIERDO Número de audiólogo examinadorSiguiente solicitanteINFORME DEL EXAMEN AUDIOLÓGICOCONDUCCIÓN DE AIRECONDUCCIÓN ÓSEA500 1000 2000 4000 6000Oído derecho500 1000 2000 4000 6000Oído izquierdo500 1000 2000 4000 6000Oído derecho500 1000 2000 4000 6000Oído izquierdoFIGURA 12.C2Esta pantalla se puede diseñar de manera que sea más amigable para el usuario.O P O R T U N I D A D D E C O N S U L T O R Í A 1 2 . 2Tener todo junto no siempre es lo mejorEl departamento de Audiología en un extenso hospital de veteranosutiliza una PC y un monitor para que los técnicos de audiología pue-dan introducir datos directamente en el sistema de registros de pa-cientes. Después de hablar con Earl Lobes, uno de los técnicos, usteddetermina que el diseño de la pantalla es un problema importante.“Utilizamos un formulario una vez y funcionó”, dice el Sr.Lobes. “Sin embargo, la pantalla no tiene sentido. Creo que tuvie-ron que meter todo a la fuerza ahí, y eso lo arruinó”.A usted le han pedido que rediseñe la pantalla (vea la figura12.C2 ) para capturar la misma información, pero hay que simplifi-carla, ya que al hacerlo se reducen los errores que han estado aco-sando a los técnicos. Usted se da cuenta que meter toda la informaciónen una sola pantalla no es el único problema.Explique sus motivos para cambiar la pantalla de la forma enque lo hizo. Puede usar más de una página de visualización si loconsidera necesario.Un usuario puede apuntar a un archivero, “sacar” un icono de carpeta, “agarrar” una pieza de icono de papel y“echarla” al icono de bote de basura. Al emplear iconos estándar, los diseñadores y usuarios ahorran tiempo.Los iconos para una aplicación específica deben estar limitados a una cantidad aproximada de 20 formasreconocibles, de manera que el vocabulario de iconos no sea tan abrumador y se pueda realizar un esquema decodificación que valga la pena. Use iconos de manera consistente en las aplicaciones donde aparecerán juntospara asegurar la continuidad y facilidad de comprensión. En general, los iconos valen la pena para los usuarios sison significativos.Diseño de la interfaz gráfica de usuarioUna interfaz gráfica de usuario (GUI) es la forma en que los usuarios interactúan con los sistemas operativosWindows y Macintosh. Esto también se conoce como interfaz de apuntar y hacer clic (point-and-click). Losusuarios pueden usar un ratón para hacer clic en un objeto y arrastrarlo hasta una posición específica. Las interfa-www.xlibros.com
380 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOces gráficas de usuario aprovechan las características adicionales en el diseño de pantallas, como los cuadros detexto, las casillas de verificación, los botones de opción, los cuadros de lista y de lista desplegable, los controlesdeslizantes y botones aumentar/disminuir, los cuadros de diálogo con controles en pestañas y los mapas de ima-gen. La figura 12.4 es una pantalla de entrada de Microsoft Access que muestra varios controles de GUI.CUADROS DE TEXTO Un rectángulo representa un cuadro de texto, como vimos antes; se utiliza para delinearlos campos de entrada y visualización de datos. Hay que tener cuidado de asegurar que el cuadro de texto sea lobastante grande como para poder alojar todos los caracteres que es necesario introducir. Cada cuadro de textodebe tener una leyenda a la izquierda para identificar lo que se va a introducir o lo que se muestra en el cuadro.En Microsoft Access, los datos de caracteres se alinean a la izquierda y los datos numéricos a la derecha.CASILLAS DE VERIFICACIÓN En el ejemplo de los controles de GUI se utiliza una casilla de verificación paraindicar un nuevo cliente. Las casillas de verificación pueden contener una X o estar vacías, lo que correspondea indicar si el usuario seleccionó o no la opción; se utilizan para marcar una o más opciones (es decir, en formano exclusiva). Una notación alternativa es utilizar un botón cuadrado con una marca de verificación () paraindicar que se seleccionó esa opción. Cabe mencionar que por lo general el texto (o leyenda) de la casilla deverificación se coloca a la derecha del cuadro. Si hay más de una casilla de verificación, las etiquetas deben tenercierto orden, ya sea alfabético o que el elemento que se marque con más frecuencia aparezca primero en unalista. Si hay más de 10 casillas de verificación, agrúpelas en un recuadro.BOTONES DE OPCIÓN Un círculo conocido como botón de opción se utiliza para seleccionar opciones exclusivas:se puede elegir sólo una de varias. De esta forma podemos dejar en claro a los usuarios que deben decidir entrevarias. De nuevo, las elecciones se enlistan a la derecha del botón, por lo general en cierta secuencia. Si hay unaopción que se seleccione con frecuencia, por lo general se selecciona como predeterminada la primera vez que semuestra la página. A menudo hay un rectángulo, conocido como grupo de opciones, que rodea a los botones deopción. Si hay más de seis botones de opción tal vez sea más conveniente usar un cuadro de lista o un cuadrode lista desplegable.CUADROS DE LISTA Y DE LISTA DESPLEGABLE Un cuadro de lista muestra varias opciones que se puedenseleccionar con el ratón. Un cuadro de lista desplegable se utiliza cuando hay poco espacio disponible en lapágina. Un solo rectángulo con una flecha apunta para abajo hacia una línea localizada del lado derecho delrectángulo. Al seleccionar esta flecha se despliega un cuadro de lista. Una vez que el usuario selecciona unelemento, se muestra en el rectángulo de selección desplegable y el cuadro de lista desaparece. Si hay una opciónque se seleccione con frecuencia, por lo general se muestra de manera predeterminada en la lista desplegable.CUADROS DE DIÁLOGO CON CONTROLES EN PESTAÑAS Estos cuadros de diálogo son otra parte de las interfacesgráficas de usuario y otra forma de hacer que los usuarios se organicen y comprendan el material del sistema coneficiencia. Al diseñar los cuadros con controles en pestañas, cree una pestaña separada para cada característicaúnica, coloque las pestañas que se utilizan con más frecuencia al frente y muéstrelas primero; incluya tambiénbotones para Aceptar, Cancelar y Ayuda.FIGURA 12.4El diseñador tiene muchoscomponentes de GUI que permitenflexibilidad al diseñar pantallas deentrada para la Web u otrospaquetes de software. Esteejemplo es de Microsoft Access.www.xlibros.com
CAPÍTULO 12 • DISEÑO DE UNA ENTRADA EFECTIVA 381CONTROLES DESLIZABLES Y BOTONES AUMENTAR/DISMINUIR Estos controles se utilizan para cambiar los datosque tienen un rango continuo de valores; proporcionan mayor control a los usuarios en su tarea de seleccionarvalores. Al desplazar el control deslizable en una dirección o en otra (ya sea izquierda/derecha o arriba/abajo)los valores aumentan o disminuyen. La figura 12.5 muestra el uso de controles deslizables para cambiar la cantidadde rojo (Red), verde (Green) y azul (Blue) al seleccionar un nuevo color. Los botones aumentar/disminuirtambién se utilizan para cambiar un valor continuo y se muestran a la derecha de los controles deslizables.MAPAS DE IMAGEN Los campos de los mapas de imagen se utilizan para seleccionar valores dentro de unaimagen. El usuario hace clic en un punto dentro de una imagen y se envían las correspondientes coordenadas xy y al programa. Los mapas de imagen se utilizan al crear páginas Web que contienen mapas con instruccionespara hacer clic en cierta área y poder ver un mapa detallado de la región.ÁREAS DE TEXTO Un área de texto se utiliza para introducir una cantidad mayor de texto. Estas áreas incluyenvarias filas, columnas y barras de desplazamiento que permiten al usuario introducir y ver texto que sea mayorque el tamaño del área del cuadro. Hay dos formas de manejar este texto. Una es evitar el uso del ajuste de línea, queobliga al usuario a oprimir la tecla Intro para pasar a la siguiente línea; el texto se desplazará a la derecha siexcede la anchura del área de texto. La otra opción es permitir el ajuste de línea.CUADROS DE MENSAJE Los cuadros de mensaje se utilizan para advertir a los usuarios y proveer otros mensajesde retroalimentación en un cuadro de diálogo, traslapando con frecuencia la pantalla. Estos cuadros demensaje tienen distintos formatos. Cada uno debe aparecer en una ventana rectangular y debe redactar conclaridad el mensaje, de manera que el usuario sepa precisamente lo que está ocurriendo y qué acciones se puedentomar.BOTONES DE COMANDOS Un botón de comando realiza una acción cuando el usuario lo selecciona con el ratón.Calcular el total, Agregar pedido y Aceptar son algunos ejemplos. El texto se centra en el botón, que tiene unaforma rectangular. Si hay una acción predeterminada, el texto se rodea con una línea punteada. El botón tambiénse puede sombrear para indicar que es el predeterminado. Los usuarios oprimen Intro para seleccionar el botónpredeterminado.Controles y valores de los formulariosCada uno de los controles incluidos en una interfaz de GUI deben tener alguna forma de almacenar los datos aso-ciados con el control. En una página Web se utiliza un par de nombre y valor, los cuales se transmiten al servidoro se envían en un correo electrónico junto con el formulario, como un nombre de ciudad y un valor de Paris, porejemplo. El nombre está definido en el formulario de la página Web y el software del servidor debe reconocer esenombre para entender lo que debe hacer con el valor o los datos que se envían con el formulario Web.La forma en que se obtiene el valor es distinta para cada control del formulario Web. En los cuadros de textoo en las áreas de texto, el valor consiste en los caracteres tecleados en los cuadros. En los botones de opción y lascasillas de verificación, el texto que aparece a la derecha de cada botón de opción o casilla de verificación es parauso humano solamente. El valor se define en el formulario Web y se transmite al momento de enviar el formulario.Si se utilizan estos datos para actualizar una base de datos, a menudo los valores son códigos que se envían y des-pués se almacenan en el servidor, y el analista debe decidir cuáles deben ser los valores apropiados al hacer clic encada botón de opción o casilla de verificación. Las listas desplegables son algo distintas de los botones de opción olas casillas de verificación en cuanto a que hay muchas opciones para una lista desplegable específica. Es necesarioFIGURA 12.5Los controles deslizantes ybotones aumentar/disminuir sondos componentes de GUIadicionales que el analistapuede utilizar para diseñarpantallas de entrada.www.xlibros.com
382 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOFIGURA 12.6Un formulario de entrada basadoen Web para que los usuarios seregistren en un crucero.decidir los valores para cada una de las opciones de la lista desplegable y, al elegir una opción, el valor seleccionadose envía con el formulario. Los valores de los formularios también se pueden usar en cálculos mediante el uso deJavaScript en el navegador. Éstos se pueden usar para multiplicar, sumar y tomar decisiones.La figura 12.6 es un ejemplo de un formulario utilizado para obtener precios y registrarse en un crucero. Eltexto en las áreas Nombre (Name), Dirección (Address), Ciudad (City), Estado (State), Código postal (Zip), Te-léfono (Phone) y Email se envía al servidor junto con el formulario. Se puede seleccionar sólo uno de los botonesde opción para el crucero de 4 días (4-day), 7 días (7-day) o 15 días (15-day). Los valores enviados son S decorto (short), en caso de que se seleccione el crucero de 4 días, A para indicar una longitud promedio (average)en caso de que se seleccione la opción de 7 días y L para un crucero largo (long) si se selecciona el de 14 días.Además, al seleccionar uno de estos cruceros se inserta la cantidad en dólares en uno de los cuadros de texto dellado izquierdo del formulario Web, y se borra cualquier botón de opción seleccionado antes, junto con cualquiercantidad. Si se marca la casilla de verificación para el cuarto con vista al océano (ocean side room), se transmiteal servidor un valor de Y para indicar Sí, se inserta la cantidad en el cuadro de texto del lado izquierdo y se ac-tualiza el total. Si el cliente trata de cambiar las cantidades en los cuadros de texto calculados, se reinician. Alhacer clic en el botón Enviar (Submit), se envían las cantidades al servidor junto con los demás datos.Campos ocultosOtro de los tipos de controles que se encuentran en los formularios Web es el campo oculto. Estos controles noson visibles para el espectador, no ocupan espacio en la página Web y pueden contener sólo un nombre y unvalor. Con frecuencia los campos ocultos se utilizan para almacenar los valores que se envían de un formularioWeb al servidor. Generalmente se requiere incluir estos valores en un segundo formulario cuando se requierenformularios múltiples para capturar todos los datos de la transacción. Algunas veces se utilizan para retenerinformación sobre el tipo de navegador que se utiliza, el sistema operativo del usuario que está navegando, et-cétera. Algunas veces un campo oculto contiene un campo clave que se utiliza para localizar un registro para elcliente o la sesión de exploración.Tablas de respuesta a eventosCuando hay interacciones complicadas en un formulario Web (o en cualquier otro formulario de GUI), podemosutilizar una tabla de respuesta a eventos para hacer una lista de la variedad de eventos que pueden ocurrir. Po-demos usar estas tablas de respuesta a eventos en un nivel alto para modelar los eventos y las respuestas de laempresa (lo que vimos en el capítulo 7), pero, en general, los eventos que ocurren en un formulario Web o enotra pantalla se limitan a las acciones de los usuarios. Estos eventos pueden ser un clic en un botón, cambiar unvalor, enfocar el campo (mover el cursor dentro del campo o en un botón de opción, casilla de verificación u otrocontrol), quitar el foco de un campo (el usuario mueve el cursor hacia fuera del campo), cargar la página Web,detectar las pulsaciones de teclas y muchos otros eventos. La respuesta muestra una lista de cómo debe reaccio-www.xlibros.com
CAPÍTULO 12 • DISEÑO DE UNA ENTRADA EFECTIVA 383nar la página Web cuando ocurra el evento. Los eventos son para un objeto específico, como un botón, un campode texto, toda la página Web, etcétera.La figura 12.7 muestra un sitio Web en el que es posible estimar el costo de la estancia en el Azure IsléResort. El usuario puede introducir el número de huéspedes, cambiar las fechas de inicio y final, e introducir elnúmero de personas para varias actividades adicionales, como buceo o golf.En la figura 12.8 se muestra la tabla de respuesta a eventos. Observe que puede haber varios eventos para cadacontrol del formulario Web. Como el usuario puede realizar cualquier número de acciones y en cualquier orden, latabla de respuesta a eventos es útil para mostrar lo que debería ocurrir. Por ejemplo, el usuario puede hacer clic enel botón Calcular (Calculate) primero, cambiar las fechas de inicio y final o cambiar el número de personas. La ta-bla de respuesta a eventos también es útil para construir un formulario Web que requiera un mínimo de acción porparte del usuario. Por ejemplo podemos considerar cuando el usuario cambia el mes o día de inicio: el mes o díafinal cambia para coincidir con el mes o día inicial. El año cambia cuando el mes es anterior al mes en curso, ya quelas personas no se pueden quedar en un centro vacacional antes del día actual en el mismo año.Algunas veces podemos usar la tabla de respuesta a eventos para explorar las mejoras en la página Web. Su-ponga que Azure Islé Resort determinó que la mayoría de sus clientes se quedaron durante siete días. Al cambiarel mes o día inicial, la fecha final se podría establecer de manera predeterminada en siete días. También podríaser conveniente tener botones de opción que permitieran al cliente seleccionar una estadía de 4, 7 o 14 días y calcularla fecha final. Otra mejora a una página Web podría ser detectar cuando se haya introducido cierto número de ca-racteres, por ejemplo los tres dígitos que corresponden al código de área de un teléfono de Estados Unidos, paradespués mover el cursor hacia el siguiente campo.Los eventos no se limitan al trabajo dentro de una sola página Web; también se pueden usar para controlarla navegación entre páginas. Esto puede ocurrir al momento de cambiar una selección en una lista desplegable oal hacer clic en un botón de opción. Los eventos también se pueden usar para cambiar el contenido de las listasdesplegables. Por ejemplo, en una página para buscar empleo, al seleccionar una categoría de empleo puedenaparecer las posiciones detalladas para ese empleo en una segunda lista desplegable.Páginas Web dinámicasLas páginas Web dinámicas cambian por sí solas como resultado de la acción de los usuarios. A menudo utili-zan JavaScript para modificar cierta parte de la página Web o un estilo. Cambiar una imagen cuando el ratónse desplaza sobre ella o girar imágenes aleatorias en un intervalo de tiempo establecido son ejemplos comunesde páginas Web dinámicas. La página Web puede detectar la anchura de la ventana del navegador y modificarla página en concordancia. Los menús que se expanden cuando el usuario hace clic en un pequeño signo po-sitivo a la izquierda del menú o cuando desplaza el ratón sobre un menú son otros ejemplos de páginas Webdinámicas.El poder de las páginas Web dinámicas se ha expandido de manera considerable en los navegadores Web re-cientes. Mediante el uso de JavaScript, un formulario Web puede transformarse a sí mismo para agregar nuevosFIGURA 12.7Un sitio Web que permite a losusuarios estimar el costo de laestancia en el Azure Islé Resort,que cambia dependiendo delnúmero de huéspedes, la duracióny las actividades adicionales.www.xlibros.com
384 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOControl del formulario Evento RespuestaPágina Web La página se carga Colocar el año actual en los campos Año inicial (Starting Year) y Año final (EndingYear). Colocar el cursor en el campo Número de personas (Number of People).Número de personas Cambia el valor Verificar que Número de personas contenga un número mayor que cero.Mes inicial(Starting Month)Cambia laselecciónEstablecer el Mes final (Ending Month) en la lista desplegable al valor del Mesinicial. Si el mes es menor que el mes actual, cambiar los valores de Añoinicial y Año final al siguiente año..Día inicial(Starting Day)Cambia laselecciónEstablecer el Día final (Ending Day) en la lista desplegable al Día inicial. Useel valor de Mes inicial para establecer los valores de Año inicial y Año final.Año inicial Recibe el enfoque Use el valor Mes inicial para calcular los valores de Año inicial y Año final.Número de días(Number of Days)Recibe el enfoque;cambia el valorCalcular el Número de días que se quedará el cliente. Si el número es menoro igual a cero, mostrar un mensaje de error.Cargo básico(Basic Charge)Recibe el enfoque Calcular el Cargo básico y colocar el cursor en el campo Número de personaspara la aventura de buceo (Scuba Adventure Number of People).Número de personas parala aventura de buceoRecibe el enfoque Seleccionar la cantidad actual mostrada (cero) de manera que el cliente puedareemplazarla.Número de personas parala aventura de buceoCambia el valor Calcular el Costo de buceo (Scuba Cost) con base en el valor de Número depersonas para la aventura de buceo y colocar el cursor en el campo Númerode personas para golf (Golf Number of People).Costo de buceo Cambia el valor Recalcular el Costo de buceo y colocar el cursor en el campo Número depersonas para golf.Número de personaspara golfRecibe el enfoque Seleccionar la cantidad actual mostrada (cero) de manera que el cliente puedareemplazarla.Número de personaspara golfCambia el valor Calcular el Costo de golf y colocar el cursor en el campo Número de personaspara montar a caballo (Horseback Riding Number of People).Costo de golf Cambia el valor Recalcular el Costo de golf y colocar el cursor en el campo Número depersonas para montar a caballo.Número de personaspara montar a caballoRecibe el enfoque Seleccionar la cantidad actual mostrada (cero) de manera que el cliente puedareemplazarla.Número de personaspara montar a caballoCambia el valor Calcular el Costo de montar a caballo (Horse Riding Cost) con base en el valorde Número de personas para montar a caballo y colocar el cursor en elcampo Apellido paterno (Last Name).Costo de montara caballoCambia el valor Recalcular el Costo de montar a caballo y colocar el cursor en el campoApellido paterno.Costo total (Total Cost) Cambia el valor Calcular el costo total y colocar el cursor en el campo Apellido paterno.Botón Calcular(Calculate)Se hizo clic en el botón Validar los datos del formulario y mostrar un mensaje de error en caso de queocurra algún error. Calcular el Costo total si no hay errores.Botón Restablecer(Reset)Se hizo clic en el botón Borrar el formulario y colocar el año actual en los campos Año inicial y Año final.Colocar el cursor en el campo Número de personas (Number of People).Botón Imprimir (Print) Se hizo clic en el botón Validar los datos del formulario y mostrar un mensaje de error en caso de queocurra algún error. Calcular el Costo total si no hay errores. Usar una cookieen el sitio Web para pasar los datos a una página de confirmación que nopermita a los usuarios modificar los datos.Botón Enviar(Submit)Se hizo clic en el botón Validar los datos del formulario y mostrar un mensaje de error en caso de queocurra algún error. Calcular el Costo total si no hay errores. Enviar elformulario al servidor y enviar la confirmación al usuario.FIGURA 12.8Una tabla de respuesta a eventos que muestra la lista de controles del formulario, eventos y respuestas para varios eventos que pueden ocurrircuando el usuario interactúa con la pantalla para estimar costos de Azure Islé Resort.www.xlibros.com
CAPÍTULO 12 • DISEÑO DE UNA ENTRADA EFECTIVA 385campos o eliminar campos antiguos, o para cambiar los atributos de los campos, como la longitud de un campoo convertir un botón de opción en una casilla de verificación. Esto hace que la página Web sea más sensible a lasacciones de los usuarios y a menudo elimina la necesidad de cargar nuevas páginas Web con base en las eleccio-nes de los usuarios.El analista debe pensar en la información que tendría sentido para el usuario del sitio Web. Por ejemplo, alcolocar la lista de selección de país en una página Web antes de otros elementos de la dirección el usuario puedecambiar la lista de países para que cambien a su vez las leyendas y se refleje el país. Si la persona seleccionóEstados Unidos de la lista desplegable, las leyendas dirían ‘Estado’ y ‘Zip Code’. Si el país fuera Canadá, las le-yendas dirían ‘Provincia’ y ‘Código postal’. Si fuera Japón, sería ‘Prefectura’ y ‘Código de correo’.Páginas Web tridimensionalesLas páginas Web dinámicas también se pueden usar para mostrar información de manera temporal, como unbloque de información de ayuda, un calendario con fechas en las que se pueda hacer clic para ayudar con loscampos para introducir fechas, los códigos de aeropuertos y demás información relacionada. Esta información sepuede almacenar mediante el uso de una serie de capas apiladas (que utilizan la propiedad de índice z de estilosen cascada) en el diseño de la página Web, cada una encima de la otra. La página Web principal es el plano base,la capa estándar de la página Web que muestra u obtiene información, mientras que las otras capas debajo de lapágina no son visibles.Cuando se solicita ayuda o el usuario hace clic en el campo de la fecha, la capa se desplaza a la parte supe-rior y se hace visible, o se genera mediante código de JavaScript y aparece. El analista o diseñador determina laposición de la capa, como un calendario que aparece a la derecha de un campo de fecha. Al seleccionar una fechase hace clic en un vínculo para cerrar o el usuario hace clic fuera del calendario y la capa se vuelve a colocardebajo de la superficie de la página Web o se elimina. El analista debe determinar si sería conveniente incluirinformación adicional para asegurar que la información sea precisa y que haya una buena comunicación con elusuario.El analista debe determinar lo siguiente:1. ¿Cómo se construyó la capa? ¿Se creó mediante el uso de código JavaScript, como un calendario, o serequiere información adicional para construir la capa? Si se requiere información adicional, ¿dónde seencuentran los datos y cómo se deben obtener? Lo ideal es que la información se obtenga de una sola tablade la base de datos en el servidor, mediante el uso de tecnologías Ajax.2. ¿Qué eventos provocaron que se creara la capa? Estos incluyen el que un usuario haga clic o seleccioneuna pestaña para llegar a un campo, o contar el número de pulsaciones de tecla introducidas en un campo.Un ejemplo sería una cadena de hoteles con muchas ubicaciones: si se incluyeran todas en una listadesplegable, ésta sería demasiado larga. Entonces, cuando el usuario introduce tres caracteres, aparece unbloque en el que se muestra una lista de los hoteles que empiezan con esas tres letras, incluyendo el país,ciudad, estado o provincia y demás información. Si se hubiera configurado el evento de detectar sólo dosletras, la lista presentada hubiera sido demasiado larga para el bloque de visualización.3. ¿Qué elementos eliminan la capa, como un botón para cerrar, hacer clic en una fecha, hacer clic fuerade la región o seleccionar un hotel de la lista?4. ¿Dónde se debe colocar el bloque que aparezca? Por lo general, enseguida del campo que creó el bloque,en coordenadas x y y.5. ¿Qué tan grande debe ser el bloque, medido en píxeles? Si la información es demasiado extensa para elbloque, como una lista de hoteles, el analista debe decidir cómo manejar la información adicional. Lasopciones incluyen agregar barras de desplazamiento o colocar un vínculo a la siguiente página deinformación en la parte inferior.6. ¿Cuáles deben ser los atributos de formato de región, como color y borde? Si hay una serie de vínculos,revise su apariencia con los usuarios. Pregúnteles si quisieran que cambiara el color al desplazar el ratónsobre cada fila.7. ¿Qué debe ocurrir al seleccionar una opción? En el caso de un calendario de reservaciones, al hacer clic enuna fecha ésta se coloca en la fecha inicial. Si se selecciona un hotel, la ciudad, estado o provincia, juntocon la información del país y un vínculo al hotel, deberán llenar los campos del formulario Web.El uso de capas constituye una forma efectiva de construir sitios Web, ya que no se requieren páginas pop-up(que el software de seguridad de Internet podría bloquear). Además, una página Web nueva no se tiene que cargary, como la información está contenida en una capa, no ocupa espacio en la página Web principal.La figura 12.9 es un ejemplo de un formulario Web utilizado por una compañía de seguros para cambiar lainformación de los clientes; agregar una nueva ubicación para un cliente, como una nueva tienda o restaurantewww.xlibros.com
386 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOSi se hace clic en “Agregarnueva propiedad (Add NewProperty)”, aparece unnuevo cuadro de propiedaddel asegurado.Si se selecciona“Corporativo (Corporate)”,la página cambia paramostrar un campo para“Compañía (Company)”.FIGURA 12.9Ejemplo de una página Webdinámica de una compañía deseguros. Si el usuario hace clicen “Agregar nueva propiedad(Add New Property)”, apareceun cuadro de nueva propiedadpara el asegurado.para un cliente existente; o eliminar una tienda para el cliente. Si está seleccionada la casilla de verificación Cor-porativo (Corporate), los campos Apellido paterno (Last Name), Primer nombre (First Name) y Segundonombre (Middle) cambian a un campo de nombre Compañía (Company), y también cambia el texto de lasleyendas. Si se hace clic en el botón Agregar nueva propiedad (Add New Property), se agrega un nuevo con-junto de campos para la tercera propiedad. Hay que tener cuidado de generar nombres únicos que el servidor re-conocerá para los campos adicionales. Al enviar el formulario, el servidor actualiza las tablas de la base de datospara agregar los campos adicionales.El analista debe decidir cuándo es apropiado el uso de páginas Web dinámicas. Si los datos cambian al cam-biar otras partes de la página Web (como hacer clic en un botón de opción o seleccionar un elemento de una listadesplegable), puede ser buena política diseñar las páginas Web como un formulario dinámico. Pero si algunaspartes del formulario Web no están seguras y otras partes requieren de cifrado, probablemente sea mejor no usarformularios dinámicos.En Expedia.com (www.expedia.com) encontrará un buen ejemplo de un formulario que se modifica a símismo. Al hacer clic en los botones de opción para un vuelo, hotel, auto o crucero, el formulario cambia pararecopilar los datos apropiados para reservar un vuelo o un hotel, por ejemplo.Las páginas Web dinámicas tienen la ventaja de que se modifican a sí mismas con rapidez, con menos in-terrupciones para enviar y recibir datos del servidor. Sin embargo, presentan ciertas desventajas; una de ellas esque no funcionan si se desactiva el JavaScript. El analista debe decidir qué hacer en esta situación.Si la persona debe usar el sitio Web (como en un entorno de intranet corporativo, en un sitio utilizado paraobtener préstamos para estudiantes, o en el caso de procesar transacciones gubernamentales o de otro tipo), la pá-www.xlibros.com
CAPÍTULO 12 • DISEÑO DE UNA ENTRADA EFECTIVA 387gina Web puede establecer con claridad que no funcionará si se desactiva JavaScript y después indicar al usuariocómo activarlo. La mayoría de los sitios Web comerciales no requieren que JavaScript esté activado y contaráncon un sitio Web alternativo para los clientes.Una segunda desventaja al usar páginas Web dinámicas es que tal vez no cumplan con la Ley sobre estado-unidenses con discapacidades (para obtener más información sobre la accesibilidad Web para todos los usuarios,consulte el capítulo 14 sobre el diseño de la interacción humano-computadora).Ajax (JavaScript asíncrono y XML)Ajax es una técnica que funciona en los navegadores Web más recientes. Implica el uso de JavaScript y ellenguaje de marcado extensible (XML). Antes de Ajax, cada vez que una página Web necesitaba datos deuna tabla distinta de la base de datos, se enviaba una petición al servidor y se cargaba toda una nueva páginacompleta. Esto es efectivo pero lento, ya que debemos cargar una página completa sólo para proveer datosadicionales para una lista desplegable o algún otro control de formulario Web con base en lo que se seleccionóantes.Ajax permite a los desarrolladores Web construir una página Web que funcione en forma más parecida a unprograma de escritorio tradicional. A medida que se necesitan nuevos datos, el navegador envía una petición alservidor y éste devuelve una pequeña cantidad de datos al navegador, quien a su vez actualiza la página actual.Esto significa que el espectador no experimenta una interrupción en su trabajo y la página Web no se vuelve acargar. La página se actualiza en forma dinámica con los nuevos datos.Estos datos pueden ser un pequeño archivo de texto o un documento de XML que contenga muchos clientesu otros datos repetitivos. Si los datos están en un archivo de XML, a cada elemento cliente se le denomina nodo ycada nodo se enumera (empezando desde cero) desde el principio del documento de XML. Esto permite a la páginaWeb ir al primer o último cliente, o iterar por todos los clientes de uno en uno mediante un clic del botón.Digamos que un analista de sistemas está diseñando un sitio Web tradicional sin Ajax, para hacer reserva-ciones en un trasbordador europeo. El sitio Web resultante podría contener varias páginas: la primera preguntaríaal cliente sobre el origen y el destino del viaje, la fecha planeada y el número de pasajeros. Como los precios sedeterminan con base en el número y las edades de los pasajeros, aparecería una segunda página Web para pre-guntar edades. Una tercera página preguntaría el tipo de vehículo deseado para la transportación terrestre, y asísucesivamente.Podemos obtener la misma información mediante el uso de técnicas Ajax, como se muestra en la figura12.10. Se introducen los mismos destinos inicial y final, junto con las fechas, en la parte superior del formularioWeb. La página Web utiliza los destinos y las fechas para determinar si hay espacio disponible en el transbor-dador. Una vez que el cliente modifica el número de pasajeros, el formulario cambia en forma dinámica paraagregar las tres listas desplegables para cada pasajero, junto con las instrucciones a un lado de ellas, y todo sintener que recargar toda la página. Cuando cambia el tipo de vehículo, en este caso a Auto (Car), se envía el tipode vehículo seleccionado al servidor. La leyenda en el formulario cambia el texto del vehículo a Marca de auto(Car Make). El servidor envía las posibles marcas de auto y la lista desplegable Marca de auto se llena de da-tos. Al seleccionar la marca de auto el valor elegido se envía al servidor, se llena la lista desplegable Modelo deauto (Car Model) y así sucesivamente.La página Web utilizada en este ejemplo responde mucho más rápidamente que cuando se emplean variaspáginas; además el usuario puede trabajar con más facilidad. De todas formas hay que tener una página Webde confirmación (aunque la página podría cambiar en forma dinámica para eliminar los campos del formularioy reemplazarlos con texto) y otra página Web para la información de nombre, dirección y tarjeta de crédito.El analista debe decidir cómo particionar la transacción en una serie de páginas, para utilizar Ajax en algunasy en otras no. Si hay que obtener pequeñas cantidades de datos para continuar la transacción y estos datos sepueden ajustar de manera lógica en un solo formulario o página Web, entonces tal vez Ajax sea el métodomás apropiado. A veces es mejor usar varias páginas, como cuando un usuario realiza una reservación en unaaerolínea. Se usa un formulario Web para obtener la información de todos los vuelos y otra página para mos-trarlos. Se podrá utilizar una tercera página para obtener la información de los pasajeros y una cuarta páginacon Ajax para seleccionar las ubicaciones de los asientos, las comidas y demás necesidades individuales paracada pasajero.Ajax tiene la ventaja de hacer que la Web funcione con más rapidez y proporciona a los usuarios unaexperiencia visual más uniforme. Las desventajas son que JavaScript debe estar habilitado y que la páginaWeb podría violar la Ley sobre estadounidenses con discapacidades. Hay que tener en cuenta la seguridad encaso de que sea necesario. Hay muchos ejemplos de sitios Web con Ajax. Algunos notables son Google Earth(earth.google.com) y Google Suggest, que responde a las pulsaciones de tecla del usuario y provee una listadesplegable de los posibles términos de búsqueda. Ajax Write (www.ajaxlaunch.com/ajaxwrite) es un proce-sador de palabras basado en Web. También hay una hoja de cálculo con Ajax y una herramienta para realizarbosquejos.www.xlibros.com
388 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOUna vez que el clienteselecciona cuatropasajeros, el servidor generacuatro listas desplegables.Después de identificara los cuatro pasajerosaparece una preguntasobre un vehículo.Aparecen máspreguntas hasta quese completa elformulario.FIGURA 12.10Cuando los analistas utilizan técnicas Ajax, una página Web dinámica responde con más rapidez a la entrada corta del usuario de la querespondería si se requirieran varias páginas distintas.www.xlibros.com
CAPÍTULO 12 • DISEÑO DE UNA ENTRADA EFECTIVA 389Uso de color en el diseño de pantallasEl color es una forma atractiva y comprobada de facilitar a los usuarios las tareas que requieren la entrada dedatos en la computadora. El uso apropiado de color en las pantallas nos permite contrastar el primer plano conel fondo, resaltar los campos importantes en los formularios, mostrar los errores, resaltar la entrada de códigoespecial y llamar la atención para muchos otros atributos especiales.Hay que usar colores de alto contraste para mostrar el primer plano y el fondo, de manera que los usuarios pue-dan comprender rápidamente lo que se presenta. El color de fondo afecta la percepción del color de primer plano.Por ejemplo, el verde oscuro tal vez se vea distinto si se quita de un fondo blanco y se coloca en uno amarillo.Las cinco combinaciones más legibles de letras en primer plano sobre un fondo son (empezando con la com-binación más legible):1. Negro sobre amarillo.2. Verde sobre blanco.3. Azul sobre blanco.4. Blanco sobre azul.5. Amarillo sobre negro.Las combinaciones menos legibles son rojo sobre verde y azul sobre rojo. Como podemos ver, los colores bri-llantes se deben usar para el primer plano, y los menos brillantes para el fondo. Los colores con contrastes fuer-tes se deben asignar primero a los campos que se deben diferenciar; después se pueden asignar otros colores.Use el color para resaltar los campos importantes en las pantallas. Los campos que son importantes se pue-den mostrar en colores distintos de los demás. Tenga en cuenta las normas culturales. Por lo general el color rojoimplica peligro, pero “en números rojos” también significa que una empresa está perdiendo dinero. Verde signi-fica “avanzar” y es un color seguro en los países occidentales.Si desea cumplir con los lineamientos de accesibilidad Web, tal vez también quiera tener en cuenta que entreel 8 y el 10 por ciento de los habitantes hombres tienen daltonismo, pero menos del 1 por ciento de las mujeressufren de este padecimiento. Use otros indicadores además del color para apoyar a los usuarios en la realizaciónde sus tareas.Al igual que con cualquier otra mejora, los diseñadores necesitan cuestionar el valor agregado de usar el color,ya que se pueden cometer abusos; una heurística conveniente es no más de cuatro colores para los nuevos usuarios ysólo hasta siete para los usuarios experimentados. Los colores irrelevantes distraen y reducen el desempeño; sin em-bargo, en muchos casos se ha demostrado que el color facilita el uso en formas muy específicas. El color se debeconsiderar una manera importante de contrastar el primer plano y el fondo, resaltar los campos y datos importantes,señalar los errores y permitir un código de entrada especial.DISEÑO DE PÁGINAS DE INTRANET E INTERNETEn el capítulo 11 hablamos sobre las nociones elementales del diseño de sitios Web. Hay más sugerencias sobreel diseño de un buen formulario de llenado por Internet o intranet que debe tener en cuenta ahora que aprendiósobre algunos de los aspectos elementales del diseño de formularios y pantallas de entrada. En la figura 12.11se muestra una página de pedidos con un formulario para ilustrar los diversos elementos del buen diseño para laWeb. Estos lineamientos son:1. Proveer instrucciones claras; los usuarios Web tal vez no estén familiarizados con la terminología técnica.2. Demostrar una secuencia de entrada lógica para los formularios de llenado, en especial debido a que losusuarios tal vez tengan que desplazarse a una región de la página que no esté visible en un principio.3. Usar varios cuadros de texto, botones, menús desplegables, casillas de verificación y botones de opciónpara funciones específicas y crear interés en el formulario.4. Proveer un cuadro de texto desplazable si no está seguro sobre cuánto espacio necesitarán los usuariospara responder a una pregunta, o sobre el lenguaje, la estructura o formulario que utilizarán los usuarios paraintroducir los datos.5. Preparar dos botones básicos en todos los formularios de llenado en Web: Enviar y Borrar formulario.6. Si el formulario es extenso y los usuarios se deben desplazar con mucha frecuencia, divídalo en variosformularios más simples en páginas separadas.7. Crear una pantalla de retroalimentación que se niegue a enviar un formulario a menos que se llenen loscampos obligatorios correctamente. La pantalla del formulario devuelto puede proveer unaretroalimentación detallada para el usuario en un color distinto. Aquí es apropiado el color rojo. Por ejemplo,tal vez un usuario tenga que escribir el nombre de un país en el campo del país, o necesite indicar un númerode tarjeta de crédito si marcó ese tipo de pago. A menudo un campo obligatorio se indica en una pantalla deentrada inicial mediante un asterisco de color rojo.www.xlibros.com
390 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOO P O R T U N I D A D D E C O N S U L T O R Í A 1 2 . 3Juego de máscarasAl contemplar la actualización del diseño del sitio Web de comer-cio electrónico para las tiendas Marathon Vitamin, su propietarioBill Berry se dio cuenta de que sus clientes eran diversos.“Hemos trabajado duro para atraer muchos tipos de clientes. Encuanto a la tienda, estamos teniendo éxito. Llegan personas con dis-tintos intereses. He conocido entusiastas del deporte que desean vita-minas de alta energía para aumentar su poder. Otros desean perderpeso con la ayuda de los suplementos vitamínicos. Algunos de nues-tros clientes se preocupan por su salud y creen que tomar vitaminasdiariamente mantiene alejado al doctor. Algunos incluso adoptan elestilo de vida que se cultivó por primera vez en 1970. Por la forma enque está configurada la tienda puede ver que estamos tratando desegmentar el espacio, de manera que los clientes de todo tipo se sien-tan bienvenidos, aunque es difícil traducir eso a la Web”.Bill voltea hacia una de sus empleadas, Jin Singh, y le pre-gunta: “¿Hay algo que podamos hacer para transformar el catálogoen línea, de manera que atraiga a distintos clientes? ¿Y qué haysobre ser receptivo para las distintas personas que visitan el sitio?”.Jin, que resulta ser fanática de los webcasts en Internet, dice:“Tengo justo lo ideal”, mientras voltea hacia su computadora y abre suWindows Media Player. “Personalmente me gusta entrar en un estadomental que coincida con la música o los videos que veo en la Web”.Jin muestra a Bill ejemplos de algunas máscaras en la pantalla.En la figura 12.C3 puede ver varias para Microsoft Windows MediaPlayer.Jin continúa: “Las máscaras me permiten personalizar laapariencia de mi Media Player. Cuando escucho canciones anti-guas, selecciono una rústica. Cuando voy a escuchar algo de NewAge, opto por una máscara que tenga un arcoíris de colores, porejemplo”.Mientras mira la pantalla, Bill exclama: “Creo que estás en locorrecto. ¿Cómo dijiste que se llamaban esas cosas?”.Jin ríe y le explica: “Se llaman máscaras, pero sólo son reves-timientos divertidos que los clientes pueden agregar a lo que deseenver. Puedo prever que en un momento dado el sitio Web podrá asu-mir una apariencia completamente nueva, dependiendo de las pre-ferencias de usuario para un tipo específico de máscara”.Con base en su evaluación de los distintos tipos de clientes quea Marathon le gustaría atraer a su sitio Web, diseñe, dibuje y des-criba una serie de máscaras que serían apropiadas para los propósi-tos de la compañía. Explique en dos párrafos cómo la acción deincluir máscaras controladas por los usuarios en un sitio Web puedeampliar los objetivos de diseño del analista en cuanto al atractivo yla facilidad de uso para la entrada.FIGURA 12.C3Seis máscaras de Microsoft Windows Media Player permiten a los usuarios personalizar sus reproductores para adaptarse a suhumor.www.xlibros.com
CAPÍTULO 12 • DISEÑO DE UNA ENTRADA EFECTIVA 391Las aplicaciones de comercio electrónico requieren algo más que sólo un buen diseño de sitios Web. Losclientes necesitan sentirse con la confianza de que van a comprar la cantidad correcta, de que van a obtener elprecio correcto y de que el costo total de una compra por Internet, incluyendo los cargos de envío, sea lo queesperan. La forma más común de establecer esta confianza es mediante el uso de la metáfora de un carrito o ca-nasta de compras. La figura 12.12 muestra el contenido de un carrito de compras para un cliente que va a realizaruna compra. Una característica importante del carrito de compras es que el cliente puede editar la cantidad delartículo que se pide, o lo puede eliminar por completo.Las aplicaciones de comercio electrónico imponen demandas adicionales para el analista que debe diseñarsitios Web para cumplir con varios objetivos de usuarios y de negocios, incluyendo establecer la misión y los va-lores corporativos en relación con la confidencialidad, preservar la privacidad del usuario y obtener devolucionesrápidas y sencillas; el procesamiento eficiente de las transacciones y la creación de buenas relaciones con losclientes.FIGURA 12.11La pantalla de pedidos del sitioWeb Merchants Bay (www.merchantsbay.com) es un buenejemplo de cómo diseñar unformulario de entrada claro, fácilde usar y funcional.FIGURA 12.12El sitio Web Merchants Bay(www.merchantsbay.com)proporciona un buen ejemplo deun carrito de compras.www.xlibros.com
392 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOA T R A C T I V O D E L A M A CEl comercio electrónico cambió el mundo al pedir a los usuarios que introdujeran sus datos directamente en formulariosde Web; al hacer esto aumentó la precisión de la entrada de información. Aunque esta metodología es eficiente para lasempresas que reciben datos, la labor de teclearlos recae en el cliente. Por fortuna existe software para automatizar eseproceso, de manera que los usuarios simplemente tienen que hacer un par de clics en vez de tener que escribir largascadenas de caracteres alfanuméricos que constituyen sus datos personales, contraseñas y números de tarjetas de crédito.En una PC, RoboForm de Siber Systems es una buena alternativa. En la Mac, 1 Password por Agile Web Solutionsparece ser el líder actual.1 Password permite a un usuario automatizar inicios de sesión, completar la información de tarjetas de crédito,llenar una identidad completa con dirección de calle y correo electrónico, e introducir notas seguras. Al igual que todobuen programa de contraseñas, 1 Password incluye características importantes como generadores de contraseñas fuer-tes, tecnología Anti-Phishing y protección integrada contra keyloggers. 1 Password también es una aplicación para eliPhone y un programa para la Palm, por lo que los usuarios pueden llevar sus contraseñas consigo.FIGURA 12.MAC1Password de Agile Web Solutions.©2006–09 Agile Web Solutions, todos los derechos reservados.RESUMENEn este capítulo presentamos los elementos del diseño de en-trada para formularios, pantallas y formularios de llenado en Web.La entrada bien diseñada debe cumplir con los objetivos deefectividad, precisión, facilidad de uso, simpleza, consistenciay atractivo. Al conocer los distintos elementos de diseño el ana-lista podrá alcanzar estas metas.Los cuatro lineamientos de los formularios de entradabien diseñados son: 1) hacer que los formularios sean fácilesde llenar, 2) asegurar que cumplan con el propósito para elque se diseñaron, 3) diseñarlos para asegurar que se llenende manera satisfactoria y 4) mantener los formularios atrac-tivos.El diseño de formularios impresos y el de formularios enpantalla y para llenado en Web se traslapa en muchos puntos im-portantes, pero hay algunas distinciones. Las pantallas muestranun cursor que orienta en forma continua al usuario. Las pantallasa menudo ofrecen asistencia para el proceso de entrada de datos,mientras que con la excepción de las instrucciones pre-impresas,puede ser difícil obtener asistencia adicional con un formu-lario. Los documentos basados en Web tienen capacidadesadicionales, como hipervínculos incrustados, funciones de ayudasensibles al contexto y formularios de retroalimentación, paracorregir la entrada antes de su envío final. Es posible agregarmáscaras como una opción para personalizar un sitio Web.www.xlibros.com
CAPÍTULO 12 • DISEÑO DE UNA ENTRADA EFECTIVA 393E X P E R I E N C I A D E H Y P E R C A S E ® 1 2“¿Acaso no es la primavera la estación más hermosa? El ar-quitecto capturó verdaderamente la esencia del paisaje, ¿no es así?Es decir, no puedes ir a ningún lado del edificio sin dejar de ver otrohermoso panorama por esas enormes ventanas. Cuando Snowdenregresó, dio un vistazo a tus pantallas de salida. La buena noticia esque piensa que sí funcionarán. El proyecto está floreciendo aligual que las flores y los árboles. Cuando Snowden regrese de Fin-landia, ¿podrías tener algunas pantallas de entrada listas para de-mostración? Él no quiere que las cosas se hagan más lentas sóloporque está fuera del país. Por cierto, el viaje a Singapur fue muyexitoso. Tal vez MRE tenga presencia mundial algún dia”.Preguntas de HYPERCASE1. Use un formulario de diseño en papel, Microsoft Visio osoftware de diseño de formularios para diseñar el prototipo deun formulario en papel que permita capturar la información delos clientes para la Unidad de capacitación (Training Unit).2. Pruebe su formulario con tres compañeros de clase; pídalesque lo llenen y redacten una crítica del formulario.3. Rediseñe su formulario de entrada para reflejar loscomentarios de sus compañeros de clases.4. Use un formulario de diseño en papel, Microsoft Visio osoftware de diseño de formularios para diseñar el prototipode un formulario de pantalla que capture la información delos clientes para la Unidad de capacitación.5. Pruebe su pantalla de entrada con tres compañeros de clases;pídales que elaboren una crítica por escrito sobre el diseño dela pantalla.6. Rediseñe la pantalla de entrada con base en los comentariosque reciba. Explique en un párrafo cómo trabajó en cadacomentario.FIGURA 12.HC1Puede ver algunas de las pantallas de entrada en HyperCase. Tal vez quiera rediseñaralgunos de los formularios electrónicos.Los cuatro lineamientos para las pantallas bien diseñadasson: 1) mantener la pantalla simple, 2) mantener la presentaciónde la pantalla consistente, 3) facilitar el movimiento del usua-rio entre las pantallas y páginas de visualización y 4) crear unapantalla atractiva y agradable. Muchos elementos de diseñodistintos permiten al analista de sistemas cumplir con estos li-neamientos.Es importante que haya un flujo apropiado en los formu-larios de papel, las pantallas de visualización y los formulariosde llenado en la Web. Los formularios deben agrupar la infor-mación de manera lógica en siete categorías; las pantallas sedeben dividir en tres secciones principales. Es posible variar lasleyendas en los formularios y las pantallas, al igual que los ti-pos de letras y los grosores de las líneas que dividen las subca-www.xlibros.com
394 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOtegorías de información. Los formularios de partes múltiplesson otra manera de asegurar que los formularios cumplan conel propósito para el que fueron diseñados. Los diseñadorespueden usar ventanas, cuadros desplegables, cuadros de diá-logo y valores predeterminados en pantalla para asegurar laefectividad del diseño.Las tablas de respuesta a eventos ayudan al analista adocumentar lo que debería ocurrir al momento en que ocu-rren los eventos. Las páginas Web dinámicas modifican lapágina Web en respuesta a los eventos. Éstas se puedenconstruir como páginas Web tridimensionales. Las técnicasde Ajax solicitan y reciben una pequeña cantidad de datosdel servidor y utilizan estos datos para modificar la páginaWeb al instante.Los formularios para llenar en Web se deben construircon los siguientes siete lineamientos en mente, así como conlos descritos en el capítulo 11:1. Proveer instrucciones claras.2. Demostrar una secuencia de entrada lógica para losformularios de llenado.3. Usar variedad de cuadros de texto, botones, menúsdesplegables, casillas de verificación y botones de opción.4. Proveer un cuadro de texto desplazable si no está segurosobre cuánto espacio necesitarán los usuarios pararesponder a una pregunta.5. Preparar dos botones básicos en todo formulario dellenado en Web: Enviar y Borrar formulario.6. Si el formulario es extenso y los usuarios se debendesplazar con mucha frecuencia, divídalo en variosformularios más simples en páginas separadas.7. Crear una pantalla de retroalimentación que resalte loserrores en un color apropiado y se niegue a enviar unformulario a menos que se llenen los campos obligatorioscorrectamente.PALABRAS CLAVE Y FRASESAjaxbotón aumentar/disminuirbotón de comandobotón de opcióncampo ocultocapacasilla de verificacióncolor en pantallacontrol de formularios de negocioscontrol deslizantecuadro de diálogo en pantallacuadro de listacuadro de lista desplegablecuadro de mensajecuadro de textocursorfacilitar el movimiento en las páginasflujo del formularioformulario especializadoformulario para llenar en Internet/intraneticono en pantallaindicadorleyenda de línealeyenda de tablaleyenda de verificación horizontalleyenda de verificación verticalleyenda enmarcadamapa de imagenmostrar combinaciones de colorespáginas Web dinámicasplano basesiete secciones de un formulariomáscaras (skins)tabla de respuesta a eventostiempo de respuestatres secciones de una pantallavalores del formularioPREGUNTAS DE REPASO1. ¿Cuáles son los objetivos de diseño para los formularios de entrada en papel, las pantallas de entrada o los formulariospara llenar en Web?2. Mencione los cuatro lineamientos para el diseño de buenos formularios.3. ¿Qué es el flujo apropiado de un formulario?4. ¿Cuáles son las siete secciones de un buen formulario?5. Mencione cuatro tipos de leyendas para usar en los formularios.6. ¿Qué es un formulario especializado? ¿Cuáles son algunas desventajas de usar formularios especializados?7. Mencione los cuatro lineamientos para el buen diseño de pantallas.8. ¿Cuáles son las tres secciones útiles para simplificar una pantalla?9. ¿Cuáles son las ventajas de usar ventanas en pantalla?10. ¿Cuáles son las desventajas de usar ventanas en pantalla?11. Mencione dos formas en que se puede mantener la consistencia en las pantallas.12. Mencione tres formas para facilitar el movimiento entre las páginas de visualización.13. Mencione cuatro elementos de diseño de interfaz gráfica. Describa a un lado de cada elemento cuándo sería apropiadoincorporarlo en un diseño de pantalla o en un formulario para llenar en Web.14. ¿Cuándo se deben usar las casillas de verificación?15. ¿Cuándo se deben usar los botones de opción?www.xlibros.com
CAPÍTULO 12 • DISEÑO DE UNA ENTRADA EFECTIVA 39516. ¿Cuáles son las dos formas distintas en que se utilizan los valores de un formulario?17. ¿Para qué se utilizan los campos ocultos en un formulario Web?18. Mencione cuatro tipos de eventos.19. ¿Qué son las páginas Web dinámicas?20. ¿Qué son las páginas Web tridimensionales?21. ¿Cómo mejora Ajax una página Web que cambia en base a las acciones de los usuarios?22. Mencione las cinco combinaciones más legibles de colores de primer plano y de fondo para usarlas en las pantallas.23. Defina lo que significa el término máscaras cuando se utilizan en el diseño Web.24. ¿Cuáles son las cuatro situaciones en las que el color puede ser útil para el diseño de pantallas y de formularios parallenar en Web?25. Mencione los siete lineamientos de diseño para un formulario de llenado basado en Web.PROBLEMAS1. He aquí las leyendas que se utilizan para un formulario de censo estatal en los EE.UU.:Nombre_____________________________________Ocupación_____________________________________Dirección_____________________________________Código postal_____________________________________Número de personas que viven en el hogar_____________________________________Edad del jefe de familia_____________________________________a. Rediseñe las leyendas de manera que el buró de censo estatal pueda capturar la misma información que se solicita enel formulario anterior sin confundir a quienes lo van a llenar.b. Rediseñe el formulario de manera que exhiba un flujo apropiado. (Sugerencia: Cerciórese de proveer una sección deacceso e identificación, de manera que la información se pueda almacenar en el sistema computarizado estatal.).c. Rediseñe el formulario de manera que lo puedan llenar los ciudadanos que visitan el sitio Web del estado. ¿Quécambios fueron necesarios para cambiar de un formulario en papel a uno que se enviará en forma electrónica?2. El Elkhorn College necesita llevar un mejor registro de los estudiantes y todos los que utilizan las computadorasdisponibles en la biblioteca Buck Memorial Library.a. Diseñe y dibuje una representación de una pantalla de visualización que los estudiantes puedan usar para iniciarsesión en las computadoras de la biblioteca. Etiquete las tres secciones de una pantalla que incluyó.b. Diseñe un formulario en papel para dejarlo a un lado de cada computadora diariamente, con el fin de que losusuarios de la comunidad (pero que no sean estudiantes) lo llenen de manera obligatoria. El formulario debe pedir elnombre, la fecha y hora de la visita, el propósito general de uso de la computadora (por ejemplo, procesamiento depalabras, navegar en la Web, examinar los documentos de bienes raíces en línea) y la hora en que cerraron sesión.Etiquete las siete secciones de un formulario que incluyó.3. Speedy Spuds es un restaurante de comida rápida que ofrece todo tipo de papas. El gerente tiene una regla de 30segundos para atender a los clientes: los dependientes del mostrador dicen que podrían alcanzar esa regla si sesimplificara el formulario que deben llenar y entregar al personal de la cocina. La información del formulario llenose introduce en el sistema computarizado al final del día, cuando el capturista necesita introducir el tipo de papas que secompró, los aderezos adicionales que se pidieron, la cantidad y el precio cobrado. Es difícil que los dependientes puedanescanear y llenar con rapidez el formulario actual.a. Diseñe y dibuje un formulario (usted elige el tamaño, pero sea considerado) que enliste las posibles variedades depapas y aderezos de una manera que facilite a los dependientes del mostrador y al personal de cocina el procesode digitalizar, y que también se pueda utilizar como entrada para el sistema de inventario/reordenamiento en laextranet que conecta a Speedy Spuds con los cultivadores de papas de Idaho. (Sugerencia: Recuerde observar todoslos lineamientos para el buen diseño de formularios.).b. Diseñe y dibuje una representación de una pantalla de visualización que puedan usar los dependientes y oficinistaspara llenar la información capturada en el formulario.c. Diseñe una pantalla de visualización basada en la pantalla que diseñó en el problema 3b. Esta vez debe funcionarcomo una pantalla que muestre a un miembro del equipo de cocina qué debe preparar para cada pedido de Spuds.Mencione tres cambios que haya hecho a la pantalla existente para adaptarla de manera que funcione como pantallade salida.www.xlibros.com
396 PARTE IV • LOS FUNDAMENTOS DEL DISEÑO4. Sherry’s Meats, una empresa mayorista y minorista de carne regional, necesita recopilar información actualizada sobrela cantidad de cada producto de carne que tiene en cada tienda. Después usará esa información para calendarizar lasentregas desde su almacén central. En la actualidad, los clientes que entran a la tienda llenan un formulario detallado enel que especifican sus pedidos individuales. El formulario muestra más de 150 artículos; incluye carne y productosderivados disponibles en distintas cantidades. Al final del día se tabulan entre 250 y 400 pedidos de los clientes y sededucen del inventario de la tienda. Después, el trabajador de la oficina en cada tienda llama por teléfono para meter unpedido para el siguiente día. Los empleados de las tiendas tienen problemas para tabular las ventas debido a los erroresque cometen los clientes al llenar sus formularios.a. No es posible hacer que el trabajador de oficina solitario en cada tienda llene los numerosos formularios depedido de los clientes. Cambie el formulario (de 3 1 2  6, ya sea horizontal o vertical) y dibújelo de manera quesea más fácil para los clientes llenarlo en forma correcta y que los trabajadores puedan tabularlo con mayorfacilidad.b. Diseñe y dibuje un formulario especializado del mismo tamaño que cumpla con las necesidades de los clientes deSherry’s, los trabajadores de oficina y los trabajadores del almacén.c. Diseñe y dibuje dos formularios distintos del mismo tamaño para cumplir con los propósitos del problema 4b, yaque Sherry ́s vende productos avícolas y de res. (Sugerencia: Piense en las formas para hacer que sea fácil distinguirlos formularios visualmente.).d. Diseñe un formulario para llenar en una pantalla. Cuando un cliente envía un pedido, cualquier persona que atiendaa los clientes en el mostrador lo introduce en el sistema de inventario de Sherry’s. Esta información se capturará yenviará a la computadora del almacén central para ayudar a controlar el inventario.e. Describa en un párrafo las desventajas de que muchas personas distintas introduzcan datos desde diferentesubicaciones. Mencione en un párrafo los pasos que puede llevar a cabo como diseñador para diseñar el formulario allenar de manera que se asegure la precisión en la entrada de datos.f. Diseñe una página Web utilizada por un cliente para introducir un pedido directamente a Sherry ́s.g. Diseñe una página Web para obtener la información de la tarjeta de crédito para un pedido en Web. Particione losdatos en dos páginas Web para obtener seguridad adicional.h. Diseñe una página Web dinámica tridimensional que permita a Sherry’s personalizar ciertos productos, como elsolicitar ingredientes específicos en un pastel de carne o en una ensalada. Cuando el cliente seleccione un productode una lista desplegable deberán aparecer los ingredientes y debe haber una forma de poder seleccionar los que elcliente desee incluir en el producto.5. La tienda de ropa de moda R. George’s, que también cuenta con un negocio de catálogo, desea llevar el registro de losclientes que entran en la tienda para poder expandir su lista de correo.a. Diseñe y dibuje un formulario simple que se pueda imprimir en tarjetas de 3  5 para repartirlo a los clientes yque lo llenen. (Sugerencia: El formulario debe tener una estética atractiva para animar a que la clientela exclusiva deR. George’s lo llene.).b. Diseñe y dibuje una representación de una pantalla de visualización que capture la información de los clientes en latienda a través de las tarjetas del problema 5a.c. Diseñe y dibuje un segundo cuadro de diálogo de controles con pestañas en la pantalla que compare a los clientes enla tienda con los clientes de catálogo.d. El propietario desea que usted le ayude a mejorar su negocio de ventas por catálogo mediante el establecimientode un sitio de comercio electrónico. Diseñe un formulario basado en Web para capturar la información de todoslos que visitan el sitio Web. Explique en un párrafo las diferencias que tendrá en comparación con el formularioimpreso.6. Hace poco, una prometedora agencia de corredores de bolsa con descuento expresó su interés en desarrollar supropio software de administración de carteras basado en Web, que los clientes puedan usar desde su hogar en susPC para realizar transacciones comerciales, obtener cotizaciones de acciones en tiempo real y llevar a cabo otrasacciones.a. Diseñe dos pantallas de entrada que faciliten al cliente la introducción de datos. La primera pantalla debe permitir alos usuarios introducir los símbolos para las acciones que desean rastrear a diario. La segunda pantalla debe permitiral cliente usar un sistema basado en iconos para diseñar un informe personalizado que muestre las tendencias en losprecios de las acciones en una variedad de gráficos o de texto.b. Sugiera otras dos pantallas de entrada que se deban incluir en este nuevo software de administración de carteras.7. My Belle Cosmetics es una gran empresa que tiene ventas mucho mayores a las de cualquier otra empresa regionalde cosméticos. Como organización es muy sensible al color, ya que introduce nuevas líneas de colores en susproductos cada otoño y primavera. Hace poco, la empresa empezó a utilizar la tecnología para mostrar en formaelectrónica a los clientes en las tiendas cuál sería su apariencia con distintas sombras de cosméticos sin tener queaplicárselos.a. Diseñe y dibuje una representación de una pantalla que puedan usar las vendedoras en el mostrador para probarvarias sombras de lápiz labial y maquillaje en un cliente individual con mucha rapidez y alto grado de precisión. Laentrada de los clientes debe ser el color de su cabello, el color de su ropa favorita y la iluminación común en suentorno (fluorescente, incandescente, exteriores, etcétera).www.xlibros.com
CAPÍTULO 12 • DISEÑO DE UNA ENTRADA EFECTIVA 397b. Diseñe y dibuje una representación de una pantalla que sea equivalente a la del problema 7a pero que demuestrevívidamente a los encargados de tomar decisiones en My Belle cómo es que el color mejora la capacidad decomprender la pantalla.c. Uno de los afiliados que tiene My Belle en la Web cuenta con una extensa cadena de tiendas departamentales.Describa en un párrafo cómo se podría alterar la pantalla del problema 7a de manera que un individuo pueda usarlay My Belle pueda colocarla en el sitio de comercio electrónico de la tienda departamental para atraer clientes.8. La empresa Home Finders Realty Corporation se especializa en localizar casas para compradores potenciales. Lainformación sobre las casas se almacena en una base de datos y se muestra en una pantalla de consulta. Diseñe unapantalla basada en Web con GUI y campos para introducir los siguientes datos, empleados para seleccionar y mostrar lascasas que coincidan con los criterios. Tenga en cuenta las características disponibles para una pantalla de GUI. Loselementos de diseño (que no se encuentran en ninguna secuencia específica) son:a. Tamaño mínimo (en pies cuadrados).b. Tamaño máximo (en pies cuadrados, opcional).c. Número mínimo de recámaras.d. Número mínimo de baños.e. Tamaño de la cochera (número de autos, opcional).f. Distrito escolar (hay un número limitado de distritos escolares disponibles en cada área).g. Alberca (sí/no, opcional).h. Ambiente (ciudad, suburbios o rural).i. Chimenea (sí/no, opcional).j. Uso eficiente de energía (sí/no).Describa además los hipervínculos necesarios para lograr este tipo de interacción.9. Diseñe una página de entrada Web para la pantalla de visualización de Home Finders Realty Corporation que creó en elproblema 8.10. La cadena hotelera TowerWood de cinco años de antigüedad necesita ayuda para diseñar su sitio Web. La empresamantiene propiedades en todas las grandes comunidades turísticas de los EE.UU. como Orlando, Florida (cerca deDisney World); Maui, Hawaii; Anaheim, California (cerca de Disneyland); Las Vegas, Nevada; y Nueva Orleans,Luisiana. Sus propiedades incluyen una variedad de habitaciones en todas estas ubicaciones.a. Describa en un párrafo cómo puede la empresa usar máscaras en su sitio Web para atraer distintos tipos de clientela,incluyendo familias con niños pequeños, parejas jóvenes en su luna de miel, parejas retiradas que desean viajar conun presupuesto establecido y los viajeros de empresas que necesitan servicios de negocios.b. Diseñe y dibuje una serie de máscaras que atraigan a los distintos tipos de clientela para el hotel que se enlistan en elproblema 10a. (Sugerencia: Use un paquete de gráficos o un programa de dibujo para ayudar a diseñar lasmáscaras.).c. Agregue un grupo de usuarios potenciales del sitio Web para la cadena hotelera TowerWood que no fueronmencionados en el problema 10a; diseñe y dibuje máscaras adicionales para ellos. Después cree una tabla querelacione cada grupo de clientes con una máscara específica que haya diseñado.11. Sludge’s Auto es un centro de reciclaje de auto partes, incluyendo autos clásicos y antiguos. Rhode Wheeler, elpropietario, desea elaborar un sitio Web para que los clientes exploren el catálogo de piezas. Diseñe una página Web conAjax que se utilice para buscar las piezas. El cliente necesita conocer la marca, modelo y año de un auto, así como lapieza. Si la pieza está en existencia deberán aparecer la descripción, condición de la pieza, precio y costo de envío, conla cantidad disponible para cada pieza, junto con una imagen de la misma. Provea un botón para cada pieza en el que sepueda hacer clic para comprarla.12. Diseñe la página Web Agregar cliente para Sludge’s Auto. Incluya un perfil que permita a Sludge’s enviar al cliente uncorreo electrónico si cierta pieza está disponible.13. Diseñe la página Comprar en Web para Sludge’s Auto. Suponga que el cliente ya se agregó y que ha iniciado sesión.Muestre cierta información sobre el cliente. Divida la información de la tarjeta de crédito (tipo de tarjeta de crédito,número de tarjeta de crédito, fecha de expiración y el código de seguridad en la parte trasera de la tarjeta) entre dospáginas Web.14. Diseñe una página Web que utilice Ajax para registrar un producto electrónico, ya sea de hardware o de software. Elformulario deberá tener el nombre y la dirección del comprador, el número telefónico, la dirección de correo electrónicoy una lista desplegable de categorías de productos. Al modificar la categoría, hay que enviar el valor de ésta al servidor,el cual devolverá un documento de XML que contiene los productos para la categoría, que se utilizarán para crear unalista desplegable de productos. Cuando el cliente seleccione un producto, se enviará el valor del producto al servidor, elcual devolverá un documento XML que se utilizará para crear un modelo o versión del producto.PROYECTOS EN GRUPO1. Maverick Transport está considerando actualizar sus pantallas de visualización de la entrada. Realice una sesión delluvia de ideas con su equipo en relación con lo que debe aparecer en las pantallas de entrada de los operadoresde computadora que introducen los datos de las cargas de las entregas a medida que se aprueban las cargas. Los camposincluirán la fecha de entrega, el contenido, el peso, los requerimientos especiales (por ejemplo, si el contenido esperecedero), y así en lo sucesivo.www.xlibros.com
398 PARTE IV • LOS FUNDAMENTOS DEL DISEÑO2. Cada miembro del equipo debe diseñar una pantalla de entrada apropiada mediante una herramienta CASE, unaherramienta de dibujo como Microsoft Visio o lápiz y papel. Comparta sus resultados con los miembros de su equipo.3. Haga una lista de otras pantallas de entrada que debería desarrollar Maverick Transport. Recuerde incluir pantallas parael despachador así como las pantallas a las que accederán los clientes y conductores. Indique cuáles deberían serpantallas de PC o pantallas en dispositivos portátiles inalámbricos.4. Diseñe una pantalla basada en Web que permita a los clientes de Maverick Transport rastrear el progreso de un envío.Realice una sesión de lluvia de ideas con los miembros del equipo para obtener una lista de elementos, o haga unaentrevista en una empresa de transporte local para averiguar sus requerimientos. Haga una lista de los hipervínculos queserán esenciales. ¿Cómo controlaría el acceso de manera que los clientes sólo puedan rastrear sus propios envíos?BIBLIOGRAFÍA SELECCIONADADirect Ferries. “Web Site Uses Ajax in Their Application”. www.directferries.co.uk/poirishsea.htm. Último acceso en julio 31,2009.Garrett, J. J. “Ajax: A New Approach to Web Applications”. Febrero 18, 2005, www.adaptivepath.com. Último acceso: 31 dejulio de 2009.Google Suggest. “Web Site That Uses Ajax”. www.google.com/webhp?complete=1&hl=en. Último acceso: 31 de julio de2009.Ives, B. “Graphical User Interfaces for Business Information Systems”. MIS Quarterly (edición especial), diciembre 1982, pp.15-48.Kyng, M. y L. Mathiassen. Computers and Design in Context. Cambridge, MA: MIT Press, 1997.Nielsen, J., R, Molich, C. Snyder y S. Farrell. E-Commerce User Experience. Fremont, CA; Nielsen Norman Group, 2001.Reisner, P. “Human Factors Studies of Data Base Query Languages: A Survey and Assessment”. Computing Surveys, Vol. 4,Núm. 1, 1981.Schmidt, A. y K. E. Kendall. “Using Ajax to Clean Up a Web Site: A New Programming Technique for Web Site Development”.Decision Line, octubre de 2006, pp. 11-13.www.xlibros.com
CAPÍTULO 12 • DISEÑO DE UNA ENTRADA EFECTIVA 399E P I S O D I O 1 2CASO DE LA CPUALLEN SCHMIDT, JULIE E. KENDALL Y KENNETH E. KENDALLFormando pantallas y visualizando formulariosReuniendo información del diseño de la salida y revisando su progreso, Chip y Anna proceden a la siguiente etapa: el diseño dela entrada. “Las páginas Web se deben diseñar de manera que se pueda capturar la información de entrada con facilidad y pre-cisión”, comenta Anna.Chip empieza a trabajar en la modificación de la pantalla que se utiliza para introducir los datos del formulario. En la figuraE12.1 se muestra la pantalla de entrada AGREGAR NUEVA COMPUTADORA (ADD NEW COMPUTER). Una de las con-sideraciones de la pantalla de entrada es la facilidad al introducir los datos; otra es la precisión. Otra consideración más es ladisponibilidad de la ayuda. Los nuevos empleados no estarían familiarizados con la operación del sistema o con lo que se re-quiere para una entrada de un campo específico. Para lograr estos objetivos, Chip incluye listas desplegables para UNIDADÓPTICA (OPTICAL DRIVE), TIPO DE COMPUTADORA (COMPUTER TYPE) y SISTEMA OPERATIVO (OPERATINGSYSTEM). “Me gusta la forma en que trabajan estas listas desplegables”, le comenta a Anna. “Los usuarios pueden seleccionarcon facilidad los códigos que se deberían almacenar en la base de datos”.“¿Por qué hacer que los usuarios seleccionen códigos?”, responde Anna. “Debe haber una forma de que puedan seleccio-nar significados descriptivos del código, como el nombre del sistema operativo, y de hacer que la computadora almacene loscódigos”.“¡Es una excelente idea!”, exclama Chip. Poco tiempo después se implementan las modificaciones.Anna revisa la pantalla de visualización y comenta: “¡Se ve excelente! Me gusta el agrupamiento de las casillas de verifi-cación y la información descriptiva contenida en las listas desplegables”.“Mira ésta en acción”, dice Chip. “Agregué un botón para que los usuarios lo opriman cuando hayan encontrado todos losdatos y hayan realizado todas las selecciones. También pueden imprimir el formulario lleno”.“¿Qué hay sobre la ayuda?”, pregunta Anna.“También pensé en eso”, le responde Chip. “Al mover el cursor de un campo a otro, la línea de estado en la parte inferiorde la pantalla muestra una línea de ayuda apropiada para ese campo. También puedo agregar ayuda en forma de cuadros deinformación sobre las herramientas, un pequeño cuadro de opciones de ayuda que aparece cuando el cursor permanece sobreun área de entrada durante un periodo breve de tiempo”. Observe que las listas desplegables tienen nombres significativos enlas áreas de datos. La ayuda se muestra en la línea de estado en la parte inferior de la pantalla.Dot revisa la pantalla completa e introduce algunos datos de prueba. “¡Estoy realmente impresionado!”, exclama. “Esmucho mejor de lo que esperaba. ¿Cuándo podemos esperar el resto del sistema?”, sonríe Chip con aprecio y recalca el excelenteprogreso que se está llevando a cabo. “¡Espero que el resto del sistema sea tan claro de usar y fácil de operar!”, dice Dot en tonoagradecido.Mientras tanto Anna se reúne con Hy Perteks, quien busca ayuda con desesperación. “¡Estoy inundado de peticiones deayuda sobre los paquetes de software! ¿Hay alguna forma de diseñar una porción del sistema para mantener la informaciónFIGURA E12.1Listas desplegables en la pantallaAGREGAR NUEVACOMPUTADORA(ADD NEW COMPUTER)en Microsoft Access.www.xlibros.com
400 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOsobre los expertos de software disponibles?”, pregunta Hy. “Tengo los nombres escritos en pedazos de papel y vivo perdiéndo-los. A menudo averiguo quiénes son estos expertos sólo después de que alguien los encuentra primero”.Anna le hace algunas preguntas sobre la información requerida y cómo le gustaría a Hy mantener y mostrar los registros.Hy responde: “Hay tantos expertos disponibles, pero la única forma que tengo de localizar la información de la persona es siutilizo su nombre como índice. Y debo confesar que soy pésimo al recordar la escritura correcta del primer nombre, muchomenos el apellido”. Anna le asegura que pronto habrá un sistema fácil de usar.De regreso en su escritorio, Anna piensa en el problema. “La pantalla AGREGAR (ADD) sería muy fácil de crear, pero¿qué hay de la pantalla CAMBIAR (CHANGE)?”. Se pregunta “¿Cómo puedo?”, y después piensa, “¡Muy bien!” mientraschasquea sus dedos. El diseño se vuelve más claro. Debe haber una pantalla con dos regiones distintas en ella. La primera debecontener el primer nombre y el apellido del experto de software. En la pantalla se incluye un botón Buscar (Find) así comobotones para desplazarse hacia delante y hacia atrás por los registros. Si los usuarios cometen un error al introducir los datos,hay un botón Deshacer (Undo) y también hay un botón para guardar los cambios. La pantalla completa se muestra en la figuraE12.2.“Excelente pantalla”, sonríe Chip. “Quiero estar aquí cuando se la enseñes a Hy”.El problema de eliminar los registros de los cursos de software que ya no se utiliza requiere un enfoque distinto. Annarazona que sería sencillo si utilizara la característica Buscar (Find) para localizar un registro y después utilizara un botón FindNext (Encontrar siguiente) para localizar el siguiente registro que coincida con los criterios. También debe haber botones quele permitan avanzar al siguiente registro o al anterior (vea ELIMINAR CURSO DE SOFTWARE [DELETE SOFTWARECOURSE]).Una vez localizado el registro, el programa ELIMINAR CURSO DE SOFTWARE debe mostrar la información pertinente.Todos los códigos en el archivo, como NIVEL DE CURSO (COURSE LEVEL) y SISTEMA OPERATIVO (OPERATINGSYSTEM) se deben sustituir con el significado completo del código. Los datos no se podrán modificar en este momento. Eloperador tendrá la oportunidad de revisar el registro y después elegir si lo desea o no eliminar. Al hacer clic en el botón paraeliminar, aparecerá un cuadro de diálogo preguntando a los usuarios si realmente desean eliminar el registro. Pueden optar porcancelar la eliminación en ese momento.Hy está encantado con los prototipos de las pantallas de visualización. Mientras prueba cada una de ellas, comenta: “Nosaben lo fácil que será para mí responder a las solicitudes de ayuda. ¡Son fabulosas!”. Se detiene por un buen rato y despuéspregunta: “Recibo muchas solicitudes sobre ofrecer cursos de capacitación programados en forma periódica. ¿Creen que po-dríamos trabajar en un sistema para registrarse en los cursos?Anna busca sus labios por un momento y comenta: “¿Alguna vez escuchó de un proyecto en el que siempre se agreganpequeñas cosas y nunca termina? Sin embargo, la universidad tiene una iniciativa Web. Podemos diseñar una página Web inte-ractiva para registrar los cursos”.“¡Magnífico!”, responde Hy. “Es más de lo que jamás hubiera esperado”.Anna empieza a diseñar la página Web, incluyendo nombre y apellido de los usuarios junto con sus direcciones de correoelectrónico y teléfonos de oficina. Se utilizan áreas adicionales para introducir el campus en donde se encuentran, el softwareque utilizan y su nivel de clase. Chip revisa el formulario y comenta: “¿Qué tal si usamos Ajax para que introduzcan su direcciónde correo electrónico del campus y hagan clic en un botón Buscar empleado? El servidor buscaría los empleados y despuésllenaría la página Web con el primer nombre y el apellido de cada empleado, junto con su teléfono de oficina. Podrían sobres-cribir el teléfono de oficina con un celular si salieran de viaje. En vez de que tengan que introducir la información del campusy del software, ¿por qué no hacemos que seleccionen opciones de una lista desplegable? ¿Y qué tal si les permitimos seleccio-nar los horarios convenientes para la capacitación?”.FIGURA E12.2La pantalla CAMBIAREXPERTO DE SOFTWARE(CHANGE SOFTWAREEXPERT) de Microsoft Access.www.xlibros.com
CAPÍTULO 12 • DISEÑO DE UNA ENTRADA EFECTIVA 401“Buena idea”, responde Anna. “Y creo que los niveles de capacitación deben estar también en una lista desplegable”. Lapágina Web de intranet completa se muestra en la figura E12.3. Observe que hay botones para enviar la consulta o restablecerlay una lista desplegable que contiene el campus como valor predeterminado. Otras listas desplegables contienen instruccionessobre lo que se debe seleccionar. Hay casillas de verificación a la izquierda para seleccionar los cursos en los que se van a re-gistrar. En la parte inferior se incluye un vínculo para enviar las preguntas por correo electrónico al instructor de capacitación.Hy está encantado. “Este formulario es mejor de lo que jamás imaginé. Creo que realmente estamos proporcionando unregistro de capacitación efectivo, y sé que mi teléfono ya no sonará tanto. ¡Tengo otra gran idea!”.Para realizar los siguientes ejercicios, puede diseñar el informe o pantalla mediante formularios de diseño, o crearlos através de cualquier procesador de palabras con el que esté familiarizado. Los campos y demás información relacionada con losinformes se incluyen en una página Web del repositorio o en las entradas del repositorio de flujo de datos de Visible Analyst.En cada ejercicio se enlistan los nombres para el flujo de datos.Se crearon los informes y pantallas correspondientes (conocidos como formularios en Microsoft Access). Toda la informa-ción está presente en la base de datos de Microsoft Access; usted sólo tiene que modificar los informes y pantallas existentespara producir las versiones finales. Para hacer las modificaciones, haga clic en el informe o pantalla deseada y después haga clicen el botón Design (Diseño). Puede realizar las siguientes modificaciones. El Page Header (Encabezado de página) contienelos encabezados de las columnas. El área Detail (Detalle) contiene los campos a imprimir para el informe.Haga clic en un campo para seleccionarlo. Haga clic en varios campos mientras oprime la tecla Mayús para seleccionarlos.Arrastre un campo (o campos) seleccionado para moverlo.Haga clic en una de las cajas pequeñas que rodean el campo para cambiar su tamaño.Seleccione varios campos, haga clic en Format (Formato) y después en una de las siguientes opciones:Align (Alinear), para alinear todos los campos con el campo superior o el izquierdo, por ejemplo.Size (Ajustar tamaño), para hacer todos los campos iguales al campo más ancho o el más alto, por ejemplo.Horizontal Spacing (Espacio horizontal), para hacer el espacio horizontal igual, aumentarlo o reducirlo.Vertical Spacing (Espacio vertical), para hacer el espacio vertical igual, aumentarlo o reducirlo.EJERCICIOSE-1. Cher Ware ha comentado varias veces que un buen formulario facilitaría de manera considerable la tarea de agregar nuevosoftware. También ofrecería documentación permanente en papel para las adiciones de software.Diseñe un formulario para agregar software al ARCHIVO MAESTRO DE SOFTWARE (SOFTWARE MASTER).Abra el Diagrama de flujo de datos 0 en Visio o Visible Analyst. Vea la entrada del repositorio FORMULARIO DESOFTWARE RECIBIDO (SOFTWARE RECEIVED FORM) para el flujo de datos. Haga clic en el vínculo para elNUEVO REGISTRO DE SOFTWARE (NEW SOFTWARE RECORD) en la Composición (Composition) para ver laestructura de datos que contiene los elementos requeridos en el formulario. Haga clic en el vínculo (o en Saltar [Jump]en Visible Analyst) a cada elemento para determinar la longitud del campo en pantalla.E-2. Diseñe la pantalla AGREGAR REGISTRO DE SOFTWARE (ADD SOFTWARE RECORD), ya sea en papel o modificandola pantalla de Microsoft Access. Use los campos que creó en el ejercicio E-1. El nombre de la estructura de datos de la páginaWeb del repositorio o de Visible Analyst es NUEVO REGISTRO DE SOFTWARE (NEW SOFTWARE RECORD).FIGURA E12.3Un formulario Web de intranetpara el Registro de capacitación(Training Registration) en el sitioWeb de la CPU.www.xlibros.com
402 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOE-3. Hy Perteks desea un formulario para llenarlo a medida que aprende sobre los nuevos expertos de software. Use la estruc-tura de datos del repositorio llamada AGREGAR EXPERTO DE SOFTWARE (ADD SOFTWARE EXPERT) para de-terminar los campos requeridos para el formulario.E-4. Cree la pantalla AGREGAR EXPERTO DE SOFTWARE en papel, mediante el uso de un procesador de palabras omodifique el formulario de Microsoft Access. Pruebe la pantalla AGREGAR EXPERTO DE SOFTWARE; use la listadesplegable y observe la barra de estado en la parte inferior de la pantalla.E-5. Diseñe o modifique el formulario de Microsoft Access para la pantalla ELIMINAR EXPERTO DE SOFTWARE(DELETE SOFTWARE EXPERT). ¿Qué campos son listas desplegables? Use la estructura de datos del reposito-rio llamada ELIMINAR EXPERTO DE SOFTWARE.E-6. Diseñe o modifique el formulario de Microsoft Access para la pantalla ELIMINAR REGISTRO DE COMPUTA-DORA (DELETE COMPUTER RECORD). La estructura de datos del repositorio se llama ELIMINAR REGIS-TRO DE COMPUTADORA.E-7. Cher Ware y Anna pasaron una buena parte de una mañana trabajando en los detalles sobre la porción de software delsistema. Invadida por el problema de proveer actualizaciones de software consistentes para todas las máquinas, a Cher legustaría un método fácil para la actualización. Tal vez se retengan unas cuantas versiones antiguas de software para ne-cesidades especiales.Parte de la solución es producir un informe, ordenado por ubicación, de todas las máquinas que contengan el software quese va a actualizar. A medida que se instala el nuevo software se coloca una marca en el informe después de cada máquina.Diseñe la pantalla ACTUALIZAR SOFTWARE (UPGRADE SOFTWARE). Agregue un botón Buscar (Find) paralocalizar el título y proveer un campo que se pueda utilizar para introducir el nuevo NÚMERO DE VERSIÓN (VERSIONNUMBER). El programa de actualización mostrará una línea para cada máquina que contenga la versión anterior delsoftware instalado. Estas líneas se ordenan por UBICACIÓN DE CAMPUS (CAMPUS LOCATION) y UBICACIÓNDE SALA (ROOM LOCATION).Las columnas son UBICACIÓN DE CAMPUS (CAMPUS LOCATION). UBICACIÓN DE SALA (ROOM LOCA-TION), NÚMERO DE INVENTARIO (INVENTORY NUMBER), NOMBRE DE MARCA (BRAND NAME), MODELO(MODEL), ACTUALIZACIÓN (UPGRADE) y RETENER VERSIÓN ANTERIOR (RETAIN OLD VERSION). La co-lumna ACTUALIZACIÓN contiene una casilla de verificación que se debe marcar si el software se va a actualizar. RE-TENER VERSIÓN ANTERIOR también es una casilla de verificación, la cual está desmarcada de manera predeterminada.Los usuarios marcan esa casilla para una máquina específica que deba retener las versiones anterior y nueva del software.Busque en la estructura de datos del repositorio llamada ACTUALIZAR SOFTWARE (SOFTWARE UPGRADE)los elementos contenidos en la pantalla.E-8. Explique por qué la pantalla ACTUALIZAR SOFTWARE (SOFTWARE UPGRADE) debe mostrar las máquinas en vezde hacer que Cher introduzca los ID de las máquinas. Describa en un párrafo por qué la pantalla muestra los registros enuna secuencia CAMPUS/SALA.E-9. Diseñe la pantalla CAMBIAR SOFTWARE (CHANGE SOFTWARE). Esta pantalla permite a Cher Ware modificardatos que se hayan introducido en forma incorrecta, además de información que cambia en forma rutinaria, como EX-PERTO DE SOFTWARE (SOFTWARE EXPERT) y NÚMERO DE COPIAS (NUMBER OF COPIES). El NÚMERODE INVENTARIO DE SOFTWARE (SOFTWARE INVENTORY NUMBER) es la clave primaria y no se debe cambiar.Los demás campos del ARCHIVO MAESTRO DE SOFTWARE (SOFTWARE MASTER) que se deben incluir en lapantalla se encuentran en la estructura de datos del repositorio llamada SOFTWARE CHANGES (CAMBIOS DE SOFT-WARE). Use estos campos para diseñar la pantalla. Se creó en Microsoft Access una pantalla limitada llamada CAM-BIAR REGISTRO DE SOFTWARE (CHANGE SOFTWARE RECORD); use la Lista de campos (Field List) deMicrosoft Access para agregarle campos. Incluya los siguientes botones: Buscar (Find), Buscar siguiente (Find Next),Registro anterior (Previous Record), Siguiente registro (Next Record), Guardar registro (Save Record) y Cancelarcambios (Cancel changes).E-10. Hy Pertks está preocupado de que los cursos anteriores para las versiones obsoletas de software estén atiborrando losdiscos. Cree e imprima la pantalla ELIMINAR CURSO DE SOFTWARE (DELETE SOFTWARE COURSE).Los campos de entrada son TÍTULO DE SOFTWARE (SOFTWARE TITLE), SISTEMA OPERATIVO (OPERA-TING SYSTEM) y NÚMERO DE VERSIÓN (VERSION NUMBER). El programa muestra una lista para cada cursoque se enseña para la versión de software especificada. La primera columna contiene un campo de entrada con una D (deeliminar, delete) que se presenta como valor predeterminado. Al colocar un espacio en el campo el registro no se elimi-nará. Las demás columnas para cada línea son TÍTULO DEL CURSO (COURSE TITLE), NIVEL (LEVEL) y DU-RACIÓN DE LA CLASE (CLASS LENGTH). Agregue un mensaje significativo para el operador.E-11. Diseñe la pantalla ACTUALIZAR INFORMACIÓN DE MANTENIMIENTO (UPDATE MAINTENANCE INFORMA-TION). Esta pantalla contiene los campos de entrada que permiten a Mike Crowe cambiar la información de mantenimientoa medida que se reparan computadoras o al realizar el mantenimiento de rutina en ellas. La estructura de datos del reposi-torio es ACTUALIZAR INFORMACIÓN DE MANTENIMIENTO (UPDATE MAINTENANCE INFORMATION).Los ejercicios en los que se antepone un icono www indican material de valor agregado disponible en el sitio Web www.pearsonhighered.com/kendall. Los estudiantes pueden descargar archivos de ejemplo de Microsoft Visio, Visible Analyst, Microsoft Project o Microsoft Access quepueden usar para completar los ejercicios.www.xlibros.com
403C A P Í T U L O 1 3Diseño de bases de datosOBJETIVOS DE APRENDIZAJEAl completar este capítulo usted podrá:1. Comprender los conceptos de bases de datos.2. Usar la normalización para almacenar los datos con eficiencia en una base de datos.3. Usar bases de datos para presentar la información.4. Comprender el concepto de los almacenes de datos corporativos.5. Comprender la utilidad de publicar las bases de datos en la Web.Algunos consideran que el almacenamiento de datos es el corazón de unsistema de información. En primer lugar, los datos tienen que estar disponiblescuando el usuario desee utilizarlos; en segundo, deben ser precisos y consis-tentes (es decir, deben poseer integridad). Además de estos requerimientos,los objetivos del diseño de bases de datos incluyen asegurar la eficiencia enel almacenamiento, la actualización y la recuperación de los datos. Por último, es necesario que larecuperación de información tenga un propósito. La información que se obtiene de los datos al-macenados debe estar en una forma que sea útil para la administración, la planeación, el controlo la toma de decisiones.Hay dos metodologías para el almacenamiento de datos en un sistema basado en computa-dora. La primera es almacenar los datos en archivos individuales, cada uno de los cuales es únicopara cierta aplicación específica. La segunda implica la creación de una base de datos, es decir, unalmacén de datos formalmente definido y controlado centralmente, creado para emplearse endistintas aplicaciones.A menudo los archivos individuales se diseñan sólo para satisfacer una necesidad inmediata,por lo que es importante que las consultas al sistema se realicen con base en una combinación dealgunos de los atributos, que pueden estar contenidos en archivos separados o ni siquiera existan.Las bases de datos son planificadas, por lo que los datos se organizan de manera que se puedanalmacenar y recuperar con eficiencia. Los almacenes de datos corporativos son bases de datosmuy grandes que alojan datos sintetizados relacionados con un tema específico, para poder res-ponder a las consultas de una manera muy eficiente.BASES DE DATOSLas bases de datos no son sólo una colección de archivos. Una base de datos es una fuente cen-tral de datos con el fin de que varios usuarios la compartan para su uso en varias aplicaciones. Elcorazón de una base de datos es el sistema de administración de bases de datos (DBMS), el cualpermite crear, modificar y actualizar la base de datos, la recuperación de los datos y la generaciónde informes y pantallas. A la persona que asegura que la base de datos cumpla con sus objetivos sele conoce como administrador de bases de datos.Los objetivos de efectividad de la base de datos incluyen lo siguiente:1. Asegurar que los datos se puedan compartir entre los usuarios y en varias aplicaciones.2. Mantener datos precisos y consistentes.3. Asegurar que todos los datos requeridos para las aplicaciones actuales y futuras estén siempredisponibles.www.xlibros.com
404 PARTE IV • LOS FUNDAMENTOS DEL DISEÑO4. Permitir que la base de datos evolucione a medida que aumenten las necesidades de los usuarios.5. Permitir que los usuarios construyan su propia vista personal de los datos sin preocuparse por la forma enque éstos se almacenan físicamente.La anterior lista de objetivos constituye un recordatorio de las ventajas y desventajas de la metodología de lasbases de datos. En primer lugar, compartir los datos significa que éstos se deben guardar sólo una vez, lo que asu vez ayuda a asegurar su integridad, ya que las modificaciones a éstos se realizan con más facilidad y confiabi-lidad si los datos aparecen sólo una vez y no en muchos archivos distintos.Cuando un usuario necesita ciertos datos específicos, una base de datos bien diseñada se anticipa a lanecesidad de dichos datos (o tal vez ya se hayan utilizado en otra aplicación). En consecuencia, los datostienen una mayor probabilidad de estar disponibles en una base de datos que en un sistema de archivos con-vencional. Una base de datos bien diseñada también puede ser más flexible que varios archivos separados;es decir, una base de datos puede evolucionar a medida que cambian las necesidades de los usuarios y lasaplicaciones.Por último, la metodología de las bases de datos tiene la ventaja de permitir que los usuarios tengan su pro-pia vista de los datos. Los usuarios no necesitan preocuparse de la estructura de la base de datos ni con su alma-cenamiento físico.Muchos usuarios extraen partes de la base de datos central de las mainframes y las descargan en PC o dis-positivos portátiles. Después, estas bases de datos reducidas se utilizan para generar informes o responder a lasconsultas específicas para el usuario final.Las bases de datos relacionales para las PC han mejorado considerablemente durante los últimos años.Uno de los principales cambios tecnológicos ha sido el diseño de software de base de datos que aprovechala GUI. Con la llegada de programas como Microsoft Access, los usuarios pueden arrastrar y soltar camposentre dos o más tablas. El desarrollo de bases de datos relacionales con estas herramientas se ha facilitadomucho.CONCEPTOS DE DATOSEs importante comprender cómo se representan los datos antes de considerar el uso de archivos o de la metodo-logía de las bases de datos. En esta sección veremos algunas definiciones críticas, incluyendo la abstracción delos datos del mundo real hasta el almacenamiento de los datos en tablas, y las relaciones de bases de datos.O P O R T U N I D A D D E C O N S U L T O R Í A 1 3 . 1Enganche su carrito de limpieza a una estrellaLa empresa Marc Schneider Janitorial Supply Company ha soli-citado su ayuda para limpiar su almacén de datos. Tan pronto comousted empieza a cuestionar a Marc Schneider con preguntas detalla-das sobre su base de datos, el rostro de su interlocutor se ruboriza.“En realidad no tenemos una base de datos de la manera en que ladescribe”, dice con un poco de vergüenza. “Siempre he queridolimpiar nuestros registros, pero no pude encontrar una persona ca-paz de hacerse cargo de esa tarea”.Después de hablar con el Sr. Schneider, usted camina por elpasillo hacia la oficina del tamaño de un clóset que pertenece a StanLessink, el programador en jefe. Stan lo pone al tanto del desarrollohistórico del actual sistema de información. “La historia de la em-presa Marc Schneider Janitorial Supply Company es el típico relatode mendigo a millonario”, comenta Stan. “El primer trabajo del Sr.Schneider fue como conserje en un boliche. Ahorró el suficiente di-nero para comprar algunos productos y empezó a venderlos a otrosboliches. Pronto decidió expandir el negocio de provisiones de lim-pieza. Descubrió que, a medida que crecía su negocio, tenía más lí-neas de productos y tipos de clientes. Los vendedores en la empresaestán asignados a las distintas líneas de productos principales (tiendasy oficinas, por ejemplo); algunos están en ventas dentro de la empresa yotros se especializan en equipo pesado, como las pulidoras y encera-doras de pisos. Los registros se mantenían en archivos separados”.Usted recuerda que el Sr. Schneider dijo: “El problema es queno tenemos manera de comparar las ganancias de cada división.Nos gustaría establecer programas de incentivos para los vendedo-res y proveer un mejor balance al momento de asignar vendedoresa cada línea de productos”.Sin embargo, al estar hablando con Stan, él agrega: “Cada di-visión tiene su propio sistema de incentivos. Las comisiones varían.No veo cómo podríamos tener un sistema común. Además, puedoobtener nuestros informes con rapidez debido a que nuestros archi-vos están configurados como queremos. Nunca hemos emitido uncheque de nómina atrasado”.Describa cómo analizaría las necesidades de almacenamientode datos de la empresa Marc Schneider Janitorial Supply Company.¿Desecharía el sistema antiguo o simplemente lo puliría un poco?Describa las implicaciones de su decisión en dos párrafos.www.xlibros.com
CAPÍTULO 13 • DISEÑO DE BASES DE DATOS 405RealidadDatosMetadatos Definiciones deelementos de datosDefinicionesde registrosOcurrencias deelementos de datosOcurrenciasde registrosAtributosEntidadesFIGURA 13.1Realidad, datos y metadatos.Realidad, datos y metadatosNos referiremos al mundo real como la realidad. Los datos que se recopilen sobre personas, lugares o eventos enla realidad se almacenarán en un momento dado en un archivo o en una base de datos. Para comprender la formay estructura de los datos, se requiere información sobre los datos en sí. La información que describe a los datosse denomina metadatos.En la figura 13.1 se muestra la relación entre realidad, datos y metadatos. Dentro del ámbito de la realidadestán las entidades y los atributos; dentro del ámbito de los datos reales están las ocurrencias de registros y las ocu-rrencias de elementos de datos; y dentro del ámbito de los metadatos están las definiciones de registros y las defini-ciones de elementos de datos. En las siguientes subsecciones hablaremos sobre el significado de estos términos.ENTIDADES Cualquier objeto o evento sobre el que alguien decida recolectar datos es una entidad. Tambiénpuede ser una persona, lugar o cosa (por ejemplo, un vendedor, una ciudad o un producto). Una entidad puedeser también un evento o unidad de tiempo, como la descompostura de una máquina, una venta, un mes o un año.Además de las entidades que vimos en el capítulo 2 hay una entidad menor adicional, conocida como subtipo deentidad; se representa con un rectángulo más pequeño dentro del rectángulo de entidad.Un subtipo de entidad es una relación especial de uno a uno empleada para representar los atributos (cam-pos) adicionales de otra entidad que tal vez no estén presentes en todos los registros de la primera entidad. Lossubtipos de entidades eliminan la situación en la que una entidad puede tener campos nulos almacenados en ta-blas de bases de datos.Un ejemplo es la entidad primaria de un cliente. Los clientes preferidos pueden tener campos especiales quecontengan información de descuento; esta información se coloca en un subtipo de entidad. Otro ejemplo son losestudiantes que tienen prácticas. El ARCHIVO MAESTRO DE ESTUDIANTES no debería contener informa-ción sobre las prácticas para cada estudiante, ya que tal vez sólo un pequeño número de ellos las tengan.RELACIONES Las relaciones son asociaciones entre entidades (algunas veces se les conoce como asociaciones dedatos). La figura 13.2 es un diagrama entidad-relación (E-R) que muestra varios tipos de relaciones.El primer tipo de relación es una relación de uno a uno (se designa como 1:1). El diagrama muestra que sólohay un PAQUETE DE PRODUCTO para cada PRODUCTO. La segunda relación de uno a uno muestra que cadaEMPLEADO tiene una OFICINA única. Cabe mencionar que todas esas entidades se pueden describir con másdetalle (un precio de producto no sería una entidad; tampoco lo sería una extensión telefónica).Otro tipo de relación es la asociación de uno a muchos (1:M) o de muchos a uno. Como se muestra en lafigura, a un MÉDICO en una organización al cuidado de la salud se le asignan muchos PACIENTES, pero unPACIENTE se asigna a un solo MÉDICO. Otro ejemplo muestra que un EMPLEADO es miembro de sóloun DEPARTAMENTO, pero cada DEPARTAMENTO tiene muchos EMPLEADOS.Por último, una relación de muchos a muchos (se designa como M:N) describe la posibilidad de que las en-tidades puedan tener muchas asociaciones en cualquier dirección. Por ejemplo, un ESTUDIANTE puede tenermuchos CURSO(s) y al mismo tiempo un CURSO puede tener muchos ESTUDIANTE(s) inscritos en él. El se-gundo ejemplo muestra que un VENDEDOR puede llamar a muchas CIUDAD(es) y una CIUDAD puede ser unárea de ventas para muchos VENDEDOR(es).La figura 13.3 muestras los símbolos estándar para la notación de pata de cuervo, la explicación oficial delos símbolos y lo que en realidad significan. Observe que el símbolo para una entidad es un rectángulo. Una en-tidad se define como una clase de persona, lugar o cosa. Un rectángulo con un diamante en su interior representaa una entidad asociativa, la cual se utiliza para unir dos entidades. Un rectángulo con un óvalo en su interior re-presenta a una entidad atributiva, la cual se utiliza para repetir grupos.Las demás notaciones necesarias para dibujar diagramas E-R son las conexiones, de las cuales hay cinco ti-pos distintos. En la porción inferior de la figura se explica el significado de la notación. Cuando una línea rectawww.xlibros.com
406 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOestáasignadoatiene Uno a uno(1:1)perteneceaatiendeUno a muchos(1:M)oMuchos a uno(M:1)daservicioatoma Muchos a muchos(M:N)Ejemplos de diagramas E-R RelacionesOficinaEmpleadoPaquete de productoProductoDepartamentoMédico EmpleadoVendedorPacienteEstudianteCursos CiudadFIGURA 13.2Los diagramas de entidad-relación(E-R) pueden mostrar asociacionesde uno a uno, de uno a muchos, demuchos a uno o de muchos amuchos.conecta dos entidades simples y los extremos de la línea están marcados con dos rayas pequeñas (||), existe unarelación de uno a uno. Después observará una pata de cuervo con una raya pequeña (|); cuando esta notación vincula alas entidades, indica una relación de uno a uno o de uno a muchos (a uno o más).Las entidades vinculadas con una línea recta más una raya corta (|) y un cero (que parece más un círculo,O) describen una relación de uno a cero o de uno a uno (sólo cero o uno). Un cuarto tipo de vínculo para rela-cionar entidades se dibuja con una línea recta marcada en un extremo con un cero (O) seguido de una pata decuervo. Este tipo muestra una relación de cero a cero, de cero a uno o de cero a muchos. Por último, una línearecta que vincula entidades con una pata de cuervo en un extremo describe una relación a más de uno.Una entidad puede tener una relación que se conecta a sí misma. Este tipo de relación se denomina relaciónde autounión; la implicación es que debe haber una forma de vincular un registro de un archivo a otro registrowww.xlibros.com
CAPÍTULO 13 • DISEÑO DE BASES DE DATOS 407EntidadSímbolo Explicación oficial Lo que realmente significaEntidad asociativaEntidad atributivaRelación a 1Relación a muchosRelación a 0 o 1Relación a 0 o másRelación a más de 1Una clase de personas, lugares o cosasSe utiliza para unir dos entidadesSe usa para repetir gruposExactamente unoUno o másSólo cero o unoPuede ser cero, uno o másMayor de unoFIGURA 13.3Los símbolos del diagramaentidad-relación y sussignificados.del mismo archivo. Podemos encontrar un ejemplo de relación de autounión en las simulaciones de HyperCaseque se incluyen en estos capítulos. Una tarea puede tener una tarea anterior (es decir, una que se deba completarantes de poder empezar la tarea actual). En esta situación, un registro (la tarea actual) apunta a otro registro (latarea anterior) en el mismo archivo.Las relaciones en palabras se pueden escribir a lo largo de la parte superior o lateral de cada línea conectora.En la práctica se ve la relación en una dirección, aunque podemos escribir relaciones en ambos lados de la línea,cada una de las cuales representa el punto de vista de una de las dos entidades (vea el capítulo 2 para obtenermás detalles sobre cómo dibujar diagramas E-R).UN EJEMPLO DE ENTIDAD-RELACIÓN En la figura 13.4 podemos ver un ejemplo de un diagrama entidad-relaciónque contiene muchas entidades, muchos tipos distintos de relaciones y numerosos atributos. El diagrama E-Rtiene que ver con un sistema de facturación, en especial con la parte del sistema relacionada con la prescripción(por cuestión de simpleza vamos a suponer que las visitas al consultorio se manejan de una manera distinta yestán fuera del alcance de este sistema).Las entidades son PRESCRIPCIÓN, MÉDICO, PACIENTE y COMPAÑÍA DE SEGUROS. La entidadTRATAMIENTO no es importante para el sistema de facturación, pero forma parte del diagrama E-R debido aque se utiliza como puente para PRESCRIPCIÓN y PACIENTE. Por lo tanto la dibujamos como entidad asocia-tiva en la figura.Aquí, un MÉDICO atiende a muchos PACIENTE(s) (1:M), cada uno de los cuales está suscrito a una COM-PAÑÍA DE SEGUROS individual. Desde luego que el PACIENTE es sólo uno de los muchos pacientes que sesuscriben a esa COMPAÑÍA DE SEGUROS (M:1) específica.Para completar los registros del MÉDICO, éste necesita mantener información sobre los tratamientos queha llevado un PACIENTE. Muchos PACIENTE(s) experimentan muchos TRATAMIENTO(s), lo cual la con-www.xlibros.com
408 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOatiendees atendidoporasegurasesuscribeaexperimentase aplica a(Nombre-médico,Dirección-médico,Teléfono-médico,Especialidad)(Nombre-paciente,Dirección-paciente,Teléfono-paciente,Fecha-primera-visita)incluyepertenecea(Nombre-producto,Nombre-paciente,Descripción,Fecha,Síntoma)(Nombre-producto,Dosis,Fabricante,Cantidad)(Nombre-aseguradora,Dirección-aseguradora,Descripción-plan)MédicoPacientePrescripciónTratamientoAseguradoraFIGURA 13.4El diagrama entidad-relación parael tratamiento de pacientes. Losatributos se pueden enlistar en unlado de las entidades. En cadacaso, la clave está subrayada.vierte en una relación de muchos a muchos (M:N). El TRATAMIENTO se representa como una entidad aso-ciativa debido a que no es importante en nuestro sistema de facturación por sí solo. Los TRATAMIENTO(s)pueden incluir tomar PRESCRIPCIÓN(es), por lo cual también es una relación M:N debido a que muchos tra-tamientos pueden requerir combinaciones de farmacéuticos y muchos fármacos pueden funcionar para muchostratamientos.Después se llenan ciertos detalles para los atributos. Éstos se enlistan a un lado de cada una de las entidadesy se subraya la clave. Por ejemplo, la entidad PRESCRIPCIÓN tiene NOMBRE PRODUCTO, DOSIS, FABRI-CANTE y CANTIDAD. En teoría sería benéfico diseñar una base de datos de esta forma, utilizando diagramasentidad-relación y después completando los detalles concernientes a los atributos. Esta metodología arriba-abajoes conveniente, pero algunas veces es difícil de lograr.ATRIBUTOS Un atributo es cierta característica de una entidad. Puede haber muchos atributos para cadaentidad. Por ejemplo, un paciente (entidad) puede tener muchos atributos tales como apellido paterno, primernombre, dirección, ciudad, estado, etcétera; la fecha de la última visita del paciente, así como los detalles de lasprescripciones también son atributos. Cuando construimos el diccionario de datos en el capítulo 8, el elementomás pequeño que describimos se denominó elemento de información. Al hablar sobre archivos y bases de datos,estos elementos de datos se denominan comúnmente elementos de datos. De hecho, los elementos de datos sonlas unidades más pequeñas en un archivo o base de datos. El término elemento de datos se puede intercambiarcon la palabra atributo.Los elementos de datos pueden tener valores. Estos valores pueden ser de longitud fija o variable; puedenser caracteres alfabéticos, numéricos, especiales o alfanuméricos. En la figura 13.5 encontrará ejemplos de ele-mentos de datos y sus valores.Algunas veces a un elemento de datos también se le conoce como campo. Sin embargo, un campo representaalgo físico, no lógico. Por lo tanto, muchos elementos de datos se pueden empaquetar en un campo; el campo sepuede leer y convertir en varios elementos de datos. Un ejemplo común de esto es guardar la fecha en un solocampo como MM/DD/AAAA. Para ordenar el archivo por fecha, se extraen tres elementos de datos separadosdel campo y se ordenan primero por AAAA, después por MM y finalmente por DD.REGISTROS Un registro es una colección de elementos de datos que tienen algo en común con la entidad descrita.La figura 13.6 es una ilustración de un registro con muchos elementos de datos relacionados. El registro que semuestra es para un pedido realizado con una empresa de pedidos por correo. PEDIDO-#, APELLIDO PATERNO,INICIAL, DIRECCIÓN CALLE, CIUDAD, ESTADO y TARJETA CRÉDITO son todos atributos. La mayoríade los registros son de longitud fija, por lo que no hay necesidad de determinar la longitud del registro cada vezque se utiliza.www.xlibros.com
CAPÍTULO 13 • DISEÑO DE BASES DE DATOS 409Entidad Elemento de datos ValorVendedorPaquetePedidoNúmero vendedorNombre vendedorNombre empresaDirecciónVentasAnchuraAlturaLongitudPesoDirección postalDirección retornoProducto(s)Descripción(es)Cantidad ordenadaApellido paterno del clientePrimera inicialDirección calleCiudadEstadoCódigo postalNúmero tarjeta créditoFecha en que se colocó el pedidoCantidadEstado87254KaytellMusic Unlimited45 Arpeum Circle$20,765216163765 Dulcinea DriveP.O. Box 341, Spring Valley, MNB521Disco compacto “Mi Bella Dama”1KileyR.765 Dulcinea DriveLa ManchaCA9340765-8798-8701/03/2010$6.99Pedido pendienteFIGURA 13.5Los valores típicos asignados a loselementos de datos pueden sernúmeros, caracteres alfabéticos,caracteres especiales ycombinaciones de los tres.PEDIDO-# APELLIDOPATERNO INICIALRegistroClave AtributosDIRECCIÓN CALLE CIUDAD ESTADO TARJETA CRÉDITOFIGURA 13.6Un registro tiene una claveprimaria y puede tener muchosatributos.Bajo ciertas circunstancias (por ejemplo, cuando el espacio es una prioridad) se utilizan registros de longi-tud variable. Este tipo de registro se utiliza como alternativa para reservar una gran cantidad de espacio para elregistro más largo posible, como el número máximo de veces que haya visitado un paciente a un médico. Cadavisita contendría muchos elementos de datos que formarían parte del registro completo del paciente (o carpeta dearchivo en un sistema manual). Más adelante en el capítulo hablaremos sobre la normalización de una relación.La normalización es un proceso que elimina a los grupos repetitivos que se encuentran en los registros de longi-tud variable.CLAVES Una clave es uno de los elementos de datos en un registro que se utiliza para identificarlo. Cuando unaclave identifica a un registro en forma única, se le llama clave primaria. Por ejemplo, PEDIDO-# puede seruna clave primaria, ya que sólo se asigna un número a cada pedido del cliente. De esta forma, la clave primariaidentifica a la entidad del mundo real (pedido del cliente).Hay que tener cuidado especial a la hora de diseñar la clave primaria. A menudo es un número secuencial oun número secuencial con un número autoverificable (llamado dígito de verificación) al final. A veces hay ciertosignificado integrado en la clave primaria, pero definir una clave primaria con base en un atributo se consideraun riesgo: si cambia el atributo, la clave primaria también cambiará y se creará una dependencia entre la claveprimaria y los datos.www.xlibros.com
410 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOUn ejemplo de clave primaria basada en datos es el uso de una abreviatura de estado para el nombre de unestado o el código de equipaje de una aerolínea para el nombre de un aeropuerto. A un atributo o colección deatributos que pueden servir como clave primaria se le denomina clave candidata. Una clave primaria tambiéndebe ser mínima y no debe contener atributos adicionales que sean necesarios para identificar a un registro.A una clave se le denomina clave secundaria si no puede identificar a un registro en forma única. Las clavessecundarias pueden ser únicas o pueden identificar a varios registros en una base de datos. Las claves secundariasse pueden utilizar para seleccionar un grupo de registros que pertenezcan a un conjunto (por ejemplo, pedidosdel estado de Virginia).Cuando no es posible identificar a un registro en forma única mediante el uso de los elementos de datos en-contrados en un registro, podemos construir una clave al elegir dos o más elementos de datos y combinarlos.A esta clave se le denomina clave concatenada o compuesta. Cuando se utiliza un elemento de datos como claveen un registro, la descripción se subraya. Por lo tanto, en el registro de PEDIDO (PEDIDO-# APELLIDO PA-TERNO, INICIAL, DIRECCIÓN CALLE, CIUDAD, ESTADO, TARJETA CRÉDITO) la clave es PEDIDO-#.Si un atributo es una clave en otro archivo, se debe subrayar con una línea punteada.Algunas bases de datos permiten al desarrollador usar un identificador de objetos (OID), una clave únicapara cada registro en la base de datos, no sólo en una tabla. Dado un identificador de objetos, se obtendrá unregistro sin importar la tabla en la que exista. Éste se puede incluir con un pedido o una confirmación de pago,junto con un mensaje como: “Éste es su número de confirmación”.METADATOS Los metadatos son datos sobre los datos del archivo o base de datos. Los metadatos describen elnombre proporcionado y la longitud asignada a cada elemento de datos. Los metadatos también describen lalongitud y la composición de cada uno de los registros.La figura 13.7 es un ejemplo de metadatos para una base de datos para cierto software genérico. La longitudde cada elemento de datos se indica de acuerdo con una convención, donde 7.2 significa que se reservan sieteespacios para el número, dos de los cuales están a la derecha del punto decimal. La letra N significa “numérico”y la A significa “alfanumérico”. La D representa a la “fecha” y se establece de manera automática en la formaMM/DD/AAAA. Algunos programas como Microsoft Access usan inglés o español simple para los metadatos,por lo que se utilizan palabras como text (texto), currency (moneda) y number (número). Microsoft Access pro-vee un valor predeterminado de 50 caracteres como longitud de campo para los nombres, lo cual está bien si tra-bajamos con sistemas pequeños, sin embargo, si va a trabajar con una base de datos extensa para un banco o unacompañía de servicios púbicos, por ejemplo, no es conveniente que dedique todo ese espacio a ese campo, puesde lo contrario la base de datos crecería mucho y se llenaría de espacio desperdiciado. Aquí es cuando podemosusar metadatos para planear con anticipación y diseñar una base de datos más eficiente.ArchivosUn archivo contiene grupos de registros que se utilizan para proveer información para operaciones, planeación,administración y toma de decisiones. Primero hablaremos sobre los tipos de archivos utilizados y después descri-biremos las diversas formas en que se pueden organizar los archivos convencionales.TIPOS DE ARCHIVOS Podemos usar los archivos para guardar datos durante un periodo indefinido o almacenarlosprovisionalmente con un propósito específico. Los archivos maestros y los archivos de tablas se utilizan paraalmacenar datos por un periodo prolongado. Los archivos temporales por lo general se denominan archivos detransacciones, archivos de trabajo o archivos de informes.Archivos maestros Los archivos maestros contienen registros para un grupo de entidades. Estos atributos sepueden actualizar con frecuencia, pero los registros en sí son relativamente permanentes. Estos archivos tiendena tener registros extensos que contienen toda la información sobre una entidad de datos. Por lo general cadaregistro contiene una clave primaria y varias claves secundarias.Aunque el analista tiene la libertad de ordenar los elementos de datos en un archivo maestro en cualquierorden, una disposición habitual es colocar el campo de la clave primaria primero, seguido de los elementos des-criptivos y al último los elementos que cambian con frecuencia con base en las actividades de negocios. Ejem-plos de un archivo maestro son los registros de pacientes, los registros de clientes, un archivo de personal y unarchivo de inventario de piezas.Archivos de tablas Un archivo de tablas contiene los datos que se utilizan para calcular más datos o medidas dedesempeño. Un ejemplo es una tabla de las tarifas postales empleada para determinar los costos de envío de unpaquete; otro ejemplo es una tabla de impuestos. Por lo general sólo un programa lee los archivos de tablas.Archivos de transacciones Un archivo de transacciones se utiliza para introducir las modificaciones queactualizan el archivo maestro y producen informes. Suponga que el archivo maestro de suscriptores de unperiódico necesita actualizarse; el archivo de transacciones contendría el número de suscriptor y un código detransacción, como E para extender la suscripción, C para cancelarla o D para cambiar la dirección. Así sólo haywww.xlibros.com
CAPÍTULO 13 • DISEÑO DE BASES DE DATOS 411Elemento de datos ValorNúmero de vendedorNombre del vendedorNombre de la empresaDirecciónVentasAnchuraAlturaLongitudPesoDirección de envíoDirección del remitenteProducto(s)Descripción(es)Cantidad solicitadaApellido del clientePrimera inicialDirección (calle)CiudadEstadoCódigo postalNúmero de tarjeta de créditoFecha en que se hizo el pedidoCantidadEstadoN 5A 20A 26A 36N 9.2N 2N 2N 2N 2A 36A 36A 4A 30N 2A 24A 1A 28A 12A 2N 9N 10D 8 MM/DD/AAAA$ 7.2A 22Se puedenespecificarformatosespeciales paralos campos.7.2 significa que elcampo contiene 7dígitos, dos de loscuales están a laderecha del puntodecimal.CamposN NuméricoA Alfanumérico o textoD Fecha MM/DD/AAAA$ MonedaM MemoFIGURA 13.7Los metadatos incluyen unadescripción de la aparienciaque debe tener el valor de cadaelemento de datos.que introducir la información relevante a las necesidades de actualización; es decir, la longitud de la renovaciónsi es E y la dirección si es D. No se requeriría información adicional si se cancelara la suscripción. El resto de lainformación ya existe en el archivo maestro. Los archivos de transacciones pueden contener varios tipos deregistros, como los tres que se utilizan para actualizar el archivo maestro de suscripciones al periódico, con uncódigo en el archivo de transacciones para indicar el tipo de transacción.Archivos de informes Cuando es necesario imprimir un informe y no hay una impresora disponible (por ejemplo,cuando está ocupada imprimiendo otros trabajos), se utiliza un archivo de informes. Al proceso de enviar lasalida a un archivo en vez de enviarla a una impresora se le conoce como puesta en cola, o “spooling”. Después,cuando el dispositivo está listo se puede imprimir el documento. Los archivos de informes son muy útiles, ya quelos usuarios pueden llevar los archivos a otros sistemas computarizados y enviarlos como salida a dispositivosespecializados.Bases de datos relacionalesLas bases de datos se pueden organizar en varias formas; el tipo más común es la base de datos relacional. Unabase de datos relacional está organizada en tablas representativas, lo cual minimiza la repetición de los datos, locual a su vez reduce los errores y el espacio de almacenamiento.VISTAS LÓGICAS Y FÍSICAS DE LOS DATOS A diferencia de un archivo, una base de datos está diseñada para que lacompartan muchos usuarios. Está claro que todos los usuarios ven los datos en distintas formas. Nos referiremosa la manera en que un usuario imagina y ve los datos como vista de usuario; esto genera un inconveniente:distintos usuarios tienen distintas vistas de usuarios. El analista de sistemas necesita examinar estas vistas ydesarrollar un modelo lógico general de la base de datos. Por último, hay que transformar el modelo lógico de labase de datos en el correspondiente diseño de la base de datos física. El diseño físico se relaciona con la formaen que se almacenan y relacionan los datos, así como la manera en que se accede a ellos.www.xlibros.com
412 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOInformes de usuario(Salidas en formato tabular, gráficas, etc.)Esquema conceptual(Modelo de diseño lógico de la base de datos)Esquema interno(Modelo de diseño físico de la base de datos)Vistas de usuario o esquema de usuario(Descripción del usuario sobre los datos que requiere)FIGURA 13.8El diseño de bases de datosincluye sintetizar los informes delos usuarios, las vistas de usuarioy los diseños lógicos y físicos.En la literatura de bases de datos, las vistas se conocen como esquema. La figura 13.8 muestra cómo estánrelacionados los informes y las vistas de usuario (esquema de usuario) con el modelo lógico (esquema concep-tual) y el diseño físico (esquema interno).Hay tres tipos principales de bases de datos estructuradas en forma lógica: jerárquicas, de redes y relacio-nales. Podemos encontrar los primeros dos tipos en sistemas heredados (antiguos). En la actualidad, el analistacomúnmente diseña una base de datos relacional.ESTRUCTURAS DE DATOS RELACIONALES Una estructura de datos relacional consiste en uno o más tablasbidimensionales, las cuales se conocen como relaciones. Las filas de la tabla representan los registros y lascolumnas contienen atributos.La figura 13.9 muestra la estructura relacional para una base de datos de pedidos de CD musicales. Aquí senecesitan tres tablas para: 1) describir los artículos y llevar el registro del precio actual de CD (PRECIOARTICULO), 2) describir los detalles del pedido (PEDIDO) y 3) identificar el estado del pedido (ESTADO AR-TICULO).Para determinar el precio de un artículo necesitamos conocer el número de artículo para encontrarlo en larelación PRECIO ARTICULO. Para actualizar el número de tarjeta de crédito de G. MacRae, podemos buscarla relación PEDIDO para MacRae y corregirla sólo una vez, incluso cuando él pidió muchos CD. Sin embargo,para averiguar el estado de parte de un pedido debemos conocer ARTICULO-# y PEDIDO-#; después debemoslocalizar esa información en la relación ESTADO PEDIDO.La labor de mantenimiento de las tablas en una estructura relacional es bastante simple, si se le compara conla labor de mantenimiento de una estructura jerárquica o de red. Una de las principales ventajas de las estructurasrelacionales es que las consultas ad hoc se manejan con eficiencia.www.xlibros.com
CAPÍTULO 13 • DISEÑO DE BASES DE DATOS 413B235 Guys and Dolls 8.99B521 My Fair Lady 6.99B894 42nd Street 10.99B992 A Chorus Line 10.99B235 10784 Se envió el 5/12B235 19796 Se envió el 5/14B235 11872 En procesoB521 11821 En procesoB894 11845 Pedido pendienteB894 11872 Se envió el 5/12B992 10784 Se envió el 5/1210784 MacRae G 2314 Curly Circle Lincoln NE 45-4654-7610796 Jones S 34 Dream Lane Oklahoma City OK 44-9876-7411821 Preston R 1008 Madison Ave. River City IA 34-7642-6411845 Channing C 454 Harmonia St. Nueva York NY 34-0876-8711872 Kiley R 765 Dulcinea Drive La Mancha CA 65-8798-87PEDIDO-#APELLIDOPATERNOPEDIDO-#ARTICULO-# ESTADOTITULOARTICULO-# PRECIODIRECCIÓN CALLE CTA COBROCIUDADI EDOPRECIO ARTICULOESTADO ARTICULOPEDIDOFIGURA 13.9En una estructura de datosrelacional, los datos se almacenanen muchas tablas.Cuando se analizan estructuras relacionales en la literatura sobre bases de datos, se utiliza con frecuenciadistinta terminología. A un archivo se le llama tabla o relación, a un registro por lo general se le denomina tuplay al conjunto de valores de atributos se le conoce como dominio.Para que las estructuras relacionales sean útiles y manejables, primero hay que normalizar las tablas relacio-nales. En la siguiente sección veremos la normalización con detalles.NORMALIZACIÓNLa normalización es la transformación de las vistas de usuario y almacenes de datos complejos en un conjuntode estructuras de datos estables y más pequeñas. Además de ser más simples y estables, las estructuras de datosnormalizadas se pueden mantener con más facilidad que las demás estructuras.Los tres pasos de la normalizaciónEmpezando con una vista de usuario o con un almacén de datos desarrollado para un diccionario de datos (vea elcapítulo 8), el analista normaliza una estructura de datos en tres pasos, como se muestra en la figura 13.10. Cadapaso implica un procedimiento importante que simplifique la estructura de datos.Es probable que la relación que se deriva de la vista de usuario o almacén de datos esté desnormalizada. Elprimer paso del proceso incluye eliminar todos los grupos repetitivos e identificar la clave primaria. Para ello,la relación necesita descomponerse en dos o más relaciones. En este punto, las relaciones tal vez ya estén en latercera forma normal, pero es probable que se necesiten más pasos para transformar las relaciones a la terceraforma normal.El segundo paso asegura que todos los atributos que no sean claves dependan por completo de la clave pri-maria. Se eliminan todas las dependencias parciales y se colocan en otra relación.El tercer paso elimina las dependencias transitivas. En una dependencia transitiva los atributos que no sonclaves dependen de otros atributos que tampoco son claves.www.xlibros.com
414 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOPaso 1 Eliminar grupos repetitivosPaso 2 Eliminar dependencias parcialesPaso 3Vistas de usuarioEliminar dependencias transitivasRelaciones entercera formanormal (3NF)Relacionesnormalizadas(1NF)Relación sinnormalizarRelaciones ensegunda formanormal (2NF)FIGURA 13.10La normalización de una relaciónse lleva a cabo en tres pasosprincipales.Un ejemplo de normalizaciónLa figura 13.11 es una vista de usuario para la empresa Al S. Well Hydraulic Equipment Company. El informemuestra los siguientes elementos: 1) NUMERO-VENDEDOR, 2) NOMBRE-VENDEDOR y 3) AREA-VEN-TAS. El cuerpo del informe muestra el 4) NUMERO-CLIENTE y el 5) NOMBRE-CLIENTE. A continuaciónestá el 6) NUMERO-ALMACEN que dará servicio al cliente, seguido de la 7) UBICACION-ALMACEN, que esla ciudad en la que se encuentra la empresa. La información final contenida en la vista de usuario es 8) MONTO-VENTAS. Las filas (una para cada cliente) en la vista de usuario muestran que los elementos 4 a 8 forman ungrupo repetido.Si el analista estuviera usando una metodología de flujo de datos/diccionario de datos, la misma informaciónen la vista de usuario aparecería en una estructura de datos. La figura 13.12 muestra cómo aparecería la estruc-tura de datos en la etapa del análisis correspondiente al diccionario de datos. El grupo repetitivo también se in-dica en la estructura de datos mediante un asterisco (*) y el uso de sangría.Antes de continuar, observe las asociaciones de datos de los elementos de datos de la figura 13.13. A estetipo de ilustración se le denomina diagrama de burbuja o diagrama de modelo de datos. Cada entidad estáencerrada en una elipse; se utilizan flechas para mostrar las relaciones. Aunque es posible dibujar estas rela-ciones con un diagrama E-R, algunas veces es más fácil usar el diagrama de burbuja más simple para modelarlos datos.En este ejemplo hay sólo un NUMERO-VENDEDOR asignado a cada NOMBRE-VENDEDOR y esa per-sona sólo cubrirá un AREA-VENTAS, pero cada AREA-VENTAS se puede asignar a muchos vendedores: deaquí que se utilice la notación de doble flecha de AREA-VENTAS a NUMERO-VENDEDOR. Para cada NU-MERO-VENDEDOR puede haber muchos NUMERO(s)-VENDEDOR(es).También habría una correspondencia de uno a uno entre NUMERO-CLIENTE y NOMBRE-CLIENTE;lo mismo se aplica para NUMERO-ALMACEN y UBICACION-ALMACEN. NUMERO-CLIENTE(s) sólotendrá un NUMERO-ALMACEN y una UBICACION-ALMACEN, pero cada NUMERO-ALMACEN oUBICACION-ALMACEN puede atender a muchos NUMERO(s)-CLIENTE(s). Por último, para determinarwww.xlibros.com
CAPÍTULO 13 • DISEÑO DE BASES DE DATOS 415NÚMEROCLIENTE VENTASNOMBRECLIENTENÚMEROALMACÉNUBICACIÓNALMACÉNVendedor #: 3462Nombre: WatersÁrea de ventas: WestAl S. WellHydraulic Equipment CompanySpring Valley, Minnesota18765 Delta Services 4 Fargo 13,54018830 M. Levy and Sons 3 Bismarck 10,600FIGURA 13.11Un reporte de usuario para laempresa Al S. Well HydraulicEquipment Company.NUMERO-VENDEDORNOMBRE-VENDEDORAREA-VENTASNUMERO-CLIENTE* (1- )NOMBRE-CLIENTENUMERO-ALMACENUBICACION-ALMACENMONTO-VENTASFIGURA 13.12Para el analista sería útil unaestructura de datos (de undiccionario de datos) al desarrollaruna base de datos.el MONTO-VENTAS de las llamadas de un vendedor a una empresa específica, es necesario conocer tanto elNUMERO-VENDEDOR como el NUMERO-CLIENTE.El principal objetivo del proceso de normalización es simplificar todos los elementos de datos complejosque se encuentran con frecuencia en las vistas de usuario. Por ejemplo, si el analista tomara la vista de usua-rio antes descrita y tratara de crear una tabla relacional con base en ella, su apariencia sería como en la figura13.14. Como esta relación se basa en nuestra vista de usuario inicial, nos referimos a ella como INFORME-VENTAS.INFORME-VENTAS es una relación sin normalizar, ya que tiene grupos repetidos. También es importanteobservar que un solo atributo tal como NUMERO-VENDEDOR no puede servir como la clave. La razón es clarasi examinamos las relaciones entre NUMERO-VENDEDOR y los otros atributos en la figura 13.15. Aunque hayuna correspondencia de uno a uno entre NUMERO-VENDEDOR y dos atributos (NOMBRE-VENDEDOR yAREA-VENTAS), existe una relación de uno a muchos entre NUMERO-VENDEDOR y los otros cinco atribu-www.xlibros.com
416 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOdonde el conjunto interno de paréntesis representa el grupo repetido.AREA-VENTASNOMBRE-CLIENTEUBICACION-ALMACENUBICACION-ALMACENMONTO-VENTASNUMERO-VENDEDORNUMERO-CLIENTENUMERO-ALMACENNUMERO-ALMACENNUMERO-CLIENTENUMERO-VENDEDOR+NUMERO-CLIENTENOMBRE-VENDEDORFIGURA 13.13Algunas veces dibujar diagramasde modelos de datos para lasasociaciones de datos ayudan a losanalistas a apreciar la complejidaddel almacenamiento de datos.NUMEROVENDEDORNOMBREVENDEDORAREAVENTASNOMBRECLIENTENUMEROCLIENTENUMEROALMACENUBICACIONALMACENMONTOVENTAS3462 Waters West 18765 Delta Systems 4 Fargo 1354018830 A. Levy and Sons 3 Bismarck 1060019242 Ranier Company 3 Bismarck 97003593 Dryne East 18841 R. W. Flood Inc. 2 Superior 1156018899 Seward Systems 2 Superior 259019565 Stodola’s Inc. 1 Plymouth 8800etc.FIGURA 13.14Si los datos se listaran en una tablasin normalizar, podría habergrupos repetitivos.tos (NUMERO-CLIENTE, NOMBRE-CLIENTE, NUMERO-ALMACEN, UBICACION-ALMACEN y MON-TO-VENTAS).Podemos expresar el INFORME-VENTAS mediante la siguiente notación abreviada:VENDEDOR-CLIENTE (NUMERO-VENDEDOR,NOMBRE-VENDEDOR, AREADE VENTASNUMERO-CLIENTE,NOMBRE-CLIENTE,NUMERO-ALMACEN,UBICACION-ALMACEN,MONTO-VENTAS)www.xlibros.com
CAPÍTULO 13 • DISEÑO DE BASES DE DATOS 417NUMERO-CLIENTENOMBRE-CLIENTENOMBRE-VENDEDORAREA-VENTASNUMERO-ALMACENUBICACION-ALMACENMONTO-VENTASNUMERO-VENDEDORFIGURA 13.15Un diagrama de modelo de datosmuestra que en la relación sinnormalizar, NUMERO-VENDEDOR tiene una asociaciónde uno a muchos con algunosatributos.PRIMERA FORMA NORMAL (1NF) El primer paso para normalizar una relación es eliminar los grupos repetidos.En nuestro ejemplo, la relación sin normalizar INFORME-VENTAS se descompondrá en dos relacionesseparadas. Estas nuevas relaciones se llamarán VENDEDOR y VENDEDOR-CLIENTE.La figura 13.16 muestra cómo se normaliza la relación INFORME-VENTAS al separar la relación en dosnuevas relaciones. Cabe mencionar que la relación VENDEDOR contiene la clave primaria NUMERO-VENDE-DOR y todos los atributos que no se repetían (NOMBRE-VENDEDOR y AREA-VENTAS).La segunda relación, VENDEDOR-CLIENTE, contiene la clave primaria de la relación VENDEDOR (laclave primaria de VENDEDOR es NUMERO-VENDEDOR) así como los atributos que formaban parte delgrupo repetido (NUMERO-CLIENTE, NOMBRE-CLIENTE, NUMERO-ALMACEN, UBICACION-ALMA-CEN y MONTO-VENTAS). Sin embargo, conocer el NUMERO-VENDEDOR no implica que conoceremosautomáticamente el NOMBRE-CLIENTE, MONTO-VENTAS, UBICACION-ALMACEN, etcétera. En estarelación debemos usar una clave concatenada (tanto NUMERO-VENDEDOR como NUMERO-CLIENTE) paraacceder al resto de la información. Es posible escribir las relaciones en notación abreviada, como se muestra acontinuación:yLa relación VENDEDOR-CLIENTE es una relación en primera forma normal, pero no está en su forma ideal.Surgen problemas debido a que algunos de los atributos no son funcionalmente dependientes de la clave prima-VENDEDOR (NUMERO VENDEDOR,NOMBRE-VENDEDOR, AREA VENTAS)VENDEDOR-CLIENTE (NUMERO-VENDEDOR,NUMERO-CLIENTE,NOMBRE-CLIENTE,NUMERO-ALMACEN,UBICACION-ALMACEN,MONTO-VENTAS)www.xlibros.com
418 PARTE IV • LOS FUNDAMENTOS DEL DISEÑO3462 Waters West3593 Dryne Eastetc.VENDEDORINFORME-VENTASVENDEDOR-CLIENTE3462 18765 Delta Systems 4 Fargo 135403462 18830 A. Levy and Sons 3 Bismarck 106003462 19242 Ranier Company 3 Bismarck 97003593 18841 R. W. Flood Inc. 2 Superior 115603593 18899 Seward Systems 2 Superior 25903593 19565 Stodola’s Inc. 1 Plymouth 8800etc.NUMEROVENDEDORNUMEROVENDEDORNOMBREVENDEDORNOMBREVENDEDORAREAVENTASAREAVENTASNUMEROCLIENTENOMBRECLIENTENUMEROALMACENUBICACIONALMACENMONTOVENTASNUMEROCLIENTENOMBRECLIENTENUMEROALMACENUBICACIONALMACENMONTOVENTASNUMEROVENDEDORFIGURA 13.16La relación original sin normalizarINFORME-VENTAS se separa endos relaciones, VENDEDOR(3NF) y VENDEDOR-CLIENTE(1NF).ria (es decir, NUMERO-VENDEDOR, NUMERO-CLIENTE). En otras palabras, algunos de los atributos queno son claves dependen sólo de NUMERO CLIENTE y no de la clave concatenada. El diagrama de modelo dedatos en la figura 13.17 muestra que MONTO-VENTAS depende de NUMERO-VENDEDOR y de NUMERO-CLIENTE, pero los otros tres atributos dependen sólo de NUMERO-CLIENTE.NOMBRE-CLIENTENUMERO-ALMACENUBICACION-ALMACENNUMERO-CLIENTEMONTO-VENTASNUMERO-VENDEDORFIGURA 13.17Un diagrama de modelo de datosmuestra que tres atributos sondependientes de NOMBRE-CLIENTE, por lo que la relaciónaún no está normalizada. TantoNUMERO-VENDEDOR comoNUMERO-CLIENTEtienen que buscar el MONTO-VENTAS.www.xlibros.com
CAPÍTULO 13 • DISEÑO DE BASES DE DATOS 419SEGUNDA FORMA NORMAL (2NF) En la segunda forma normal, todos los atributos serán funcionalmentedependientes de la clave primaria. Por lo tanto, el siguiente paso es eliminar todos los atributos parcialmente depen-dientes y colocarlos en otra relación. La figura 13.18 muestra cómo se divide la relación VENDEDOR-CLIENTEen dos nuevas relaciones: VENTAS y CLIENTE-ALMACEN. Estas relaciones también se pueden expresar de lasiguiente manera:NUMEROCLIENTENOMBRECLIENTENUMEROALMACENUBICACIONALMACEN18765 Delta Systems 4 Fargo18830 A. Levy and Sons 3 Bismarck19242 Ranier Company 3 Bismarck18841 R. W. Flood Inc. 2 Superior18899 Seward Systems 2 Superior19565 Stodola’s Inc. 1 Plymouthetc.NUMEROVENDEDORNUMEROCLIENTEMONTOVENTASNUMEROVENDEDORMONTOVENTAS3462 18765 135403462 18830 106003462 19242 97003593 18841 115603593 18899 25903593 19565 8800etc.VENDEDOR-CLIENTECLIENTE-ALMACENVENTASNUMEROCLIENTENOMBRECLIENTENUMEROALMACENUBICACIONALMACENFIGURA 13.18La relación VENDEDOR-CLIENTE se separa en unarelación llamada CLIENTE-ALMACEN (2NF) y una relaciónllamada VENTAS (1NF).yLa relación CLIENTE-ALMACEN está en la segunda forma normal. Todavía se puede simplificar más debidoa que hay dependencias adicionales en la relación. Algunos de los atributos que no son claves dependen no sólode la clave primaria, sino también de un atributo que no es clave. Esta dependencia se denomina dependenciatransitiva.La figura 13.19 muestra las dependencias en la relación CLIENTE-ALMACEN. Para que la relación asumala segunda forma normal, todos los atributos deben ser dependientes de la clave primaria NUMERO-CLIENTE,como se muestra en el diagrama. Sin embargo, UBICACION-ALMACEN también depende obviamente de NU-MERO-ALMACEN. Para simplificar esta relación se requiere otro paso.VENTAS (NUMERO-VENDEDOR, NUMERO-CLIENTE,MONTO-VENTASALMACEN CLIENTE (NUMERO-CLIENTE,NOMBRE-CLIENTE,NUMERO-ALMACEN,UBICACION-ALMACEN)www.xlibros.com
420 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOTERCERA FORMA NORMAL (3NF) Una relación normalizada está en la tercera forma normal si todos los atributosque no son claves son completa y funcionalmente dependientes de la clave primaria y no hay dependenciastransitivas (no claves). Al igual que en los pasos anteriores, es posible descomponer la relación CLIENTE-ALMACEN en dos, como se muestra en la figura 13.20.Las dos nuevas relaciones se llaman CLIENTE y ALMACEN, y se pueden escribir de la siguiente manera:NUMERO-CLIENTENOMBRE-CLIENTEUBICACION-ALMACENNUMERO-ALMACENFIGURA 13.19Un diagrama de modelo de datosmuestra que existe unadependencia transitiva entreNUMERO-ALMACEN yUBICACION-ALMACEN.18765 Delta Systems 418830 A. Levy and Sons 319242 Ranier Company 318841 R. W. Flood Inc. 218899 Seward Systems 219565 Stodola’s Inc. 1etc.CLIENTECLIENTE-ALMACEN4 Fargo3 Bismarck2 Superior1 Plymouthetc.ALMACENNUMEROCLIENTENOMBRECLIENTENUMEROALMACENNUMEROCLIENTENOMBRECLIENTENUMEROALMACENUBICACIONALMACENNUMEROALMACENUBICACIONALMACENFIGURA 13.20La relación CLIENTE-ALMACEN se separa en dosrelaciones llamadas CLIENTES(1NF) y ALMACEN (1NF).yLa clave primaria para la relación CLIENTE es NUMERO-CLIENTE y la clave primaria para la relación AL-MACEN es NUMERO-ALMACEN.Además de estas claves primarias, podemos identificar a NUMERO-ALMACEN como una clave externaen la relación CLIENTE. Una clave externa es cualquier atributo que no sea clave en una relación, pero que seaCLIENTE (NUMERO-CLIENTE, NOMBRE-CLIENTE,NUMERO-ALMACEN)ALMACEN (NUMERO-ALMACEN,UBICACION-ALMACEN)www.xlibros.com
CAPÍTULO 13 • DISEÑO DE BASES DE DATOS 421clave primaria en otra. Para designar a NUMERO-ALMACEN como clave externa en la notación anterior y enlas figuras, la pondremos subrayada: _____________.Finalmente, la relación original sin normalizar INFORME-VENTAS se ha transformado en cuatro relacio-nes 3NF. Al revisar las relaciones que se muestran en la figura 13.21, podemos ver que la relación individualINFORME-VENTAS se transformó en las siguientes cuatro relaciones:yLa tercera forma normal es adecuada para la mayoría de los problemas de diseño de bases de datos. La simplifi-cación que se obtiene al transformar una relación sin normalizar en un conjunto de relaciones en 3NF constituyeun enorme beneficio en cuanto al tiempo que se requiere para insertar, eliminar y actualizar información en labase de datos.En la figura 13.22 se muestra un diagrama E-R para la base de datos. Un VENDEDOR atiende a muchosCLIENTE(s), quienes generan VENTAS y reciben sus artículos de un ALMACEN (el ALMACEN más cercano asu ubicación). Tome su tiempo para observar cómo se relacionan las entidades y atributos con la base de datos.Uso del diagrama entidad-relación para determinar las claves de los registrosPodemos usar el diagrama E-R para determinar las claves requeridas para un registro o una relación de la basede datos. El primer paso es construir el diagrama E-R e identificar una clave única (primaria) para cada entidadNOMBREVENDEDORAREAVENTAS3462 Waters Oeste3593 Dryne Esteetc.VENDEDOR3462 18765 135403462 18830 106003462 19242 97003593 18841 115603593 18899 25903593 19565 8800etc.VENTAS18765 Delta Systems 418830 A. Levy and Sons 319242 Ranier Company 318841 R. W. Flood Inc. 218899 Seward Systems 219565 Stodola’s Inc. 1etc.CLIENTE4 Fargo3 Bismarck2 Superior1 Plymouthetc.ALMACENNUMEROCLIENTENUMEROCLIENTENOMBRECLIENTENOMBREALMACENNOMBREALMACENUBICACIONALMACENNUMEROVENDEDORNUMEROVENDEDORMONTOVENTASFIGURA 13.21La base de datos completa consisteen cuatro relaciones en 1NFllamadas VENDEDOR, VENTAS,CLIENTE y ALMACEN.VENDEDOR (NUMERO-VENDEDOR, NOMBRE-VENDEDOR,AREA-VENTAS)VENTAS (NUMERO-VENDEDOR, NUMERO-CLIENTE,MONTO-VENTAS)CLIENTE (NUMERO-CLIENTE, NOMBRE-CLIENTE,NUMERO-ALMACEN)ALMACEN (NUMERO-ALMACEN,UBICACION-ALMACEN)www.xlibros.com
422 PARTE IV • LOS FUNDAMENTOS DEL DISEÑO(Numero-vendedor,Nombre-vendedor,Area-ventas)generasellevan acabo porsoncompradasporaccedearecibe deenvía a(Numero-vendedor,Numero-cliente,Monto ventas)(Numero-cliente,Nombre-cliente,Numero-almacen)(Numero-almacen,Ubicacion-almacen)VendedorClienteVentasAlmacénFIGURA 13.22Un diagrama entidad-relación parala base de datos de la empresaAl S. Well Hydraulic Company.colocaNumero-clientecontieneNumero-pedidoNumero-clienteNumero-ArticuloCliente Pedido ArticuloFIGURA 13.23Un diagrama entidad-relación paralos pedidos de los clientes.de datos. La figura 13.23 muestra un diagrama E-R para un sistema de pedidos de clientes. Hay tres entidades dedatos: CLIENTE, con la clave primaria NUMERO-CLIENTE; PEDIDO, con la clave primaria NUMERO-PEDIDO, y ARTICULO, con NUMERO-ARTICULO como clave primaria. Un CLIENTE puede colocar muchospedidos, pero cada PEDIDO puede ser colocado sólo por un CLIENTE, por lo que la relación es de uno a mu-chos. Cada PEDIDO puede contener muchos ARTICULO(s), y cada ARTICULO puede estar contenido en muchosPEDIDO(s), por lo que la relación PEDIDO-ARTICULO es de muchos a muchos.Sin embargo, una clave externa es un campo de datos de cierto archivo que es la clave primaria de otro ar-chivo maestro. Por ejemplo, un NUMERO-DEPARTAMENTO que indica que la especialidad de un estudiantepuede existir en la tabla MAESTRA DE ESTUDIANTES. NUMERO-DEPARTAMENTO también podría ser laclave única para la tabla MAESTRA DE DEPARTAMENTOS.Relación de uno a muchosUna relación de uno a muchos es el tipo más común de relación, ya que todas las relaciones de muchos a muchosse deben descomponer en dos relaciones de uno a muchos. Cuando ocurra una relación de uno a muchos, colo-que la clave primaria de la tabla en el extremo de uno de la relación como una clave externa para la tabla en elextremo de muchos de la relación. Por ejemplo, como un cliente puede tener muchos pedidos, coloque el númerode cliente en el registro de pedidos.Es fácil construir el diseño de páginas Web, pantallas o informes que incluyan información de sólo un regis-tro de la relación de muchos, junto con la información del extremo de uno de la relación. La pantalla no tendráinformación repetida. Un ejemplo es la consulta de un pedido mediante el uso de un número de pedido para bus-car un pedido individual. Como el pedido es para un cliente, el resultado consistiría en los campos del pedido yun solo cliente.Es más complicado diseñar el inverso, ya que la tabla en el extremo de uno de la relación puede tener mu-chos registros para el extremo de muchos. Éstos se implementan en varias formas. Para una pantalla de visuali-zación simple, la información del extremo de uno se muestra con un número repetitivo de grupos de informacióndel extremo de muchos de la relación. En Microsoft Access esto podría ser un formulario con un subformulario,www.xlibros.com
CAPÍTULO 13 • DISEÑO DE BASES DE DATOS 423como un cliente con un subformulario de todos los pedidos del cliente. Si hubiera un extenso número de registrosdel extremo de muchos, aparecerían barras de desplazamiento.En situaciones simples, la relación también se podría implementar mediante el uso de una lista desple-gable, donde cada registro del extremo de muchos se convertiría en una entrada en el extremo de uno; unejemplo es la pantalla de un automóvil junto con una lista desplegable que contenga todos los modelos de eseautomóvil. Al diseñar sitios Web, la información del extremo de uno podría estar en la parte superior de lapágina, con varios grupos de datos debajo de ésta o varios vínculos a los datos. Un ejemplo es un tema en unmotor de búsqueda que produce como resultado muchos vínculos coincidentes, o un género de música y mu-chos artistas que coinciden con ese género.Relación de muchos a muchosCuando la relación es de muchos a muchos se requieren tres tablas: una para cada entidad de datos y una parala relación. Las entidades PEDIDO y ARTICULO en nuestro ejemplo tienen una relación de muchos a mu-chos. La clave primaria de cada entidad de datos se almacena como una clave externa de la tabla relacional.Esta tabla relacional puede contener sólo las claves primarias para cada entidad de datos, o puede contener da-tos adicionales, como la calificación recibida por un curso o la cantidad de un artículo ordenado. Consulte ladisposición de la tabla que se muestra en la figura 13.24. La tabla ARTICULO PEDIDO contiene informaciónsobre los artículos que contiene cada pedido y provee un vínculo entre la tabla PEDIDO y la tabla MAESTRADE ARTICULOS.La tabla de relación se debe indexar en cada clave externa (una para cada tabla en la relación) y puede teneruna clave primaria que consista en una combinación de las dos claves externas. A menudo las empresas usan unaclave única, como un número de secuencia, como la clave primaria para la tabla relacional. Para buscar muchosregistros de una segunda tabla dada la primera, lea directamente la tabla relacional en busca de la clave deseada.Localice el registro que coincida en la segunda tabla de muchos. Siga iterando por la tabla relacional hasta queya no encuentre la clave deseada. Por ejemplo, para buscar los registros en la tabla MAESTRA DE ARTICU-LOS para un registro específico en la tabla PEDIDO, lea directamente la tabla PEDIDO-ARTICULO usando elNUMERO-PEDIDO como índice. Los registros se secuencian en forma lógica con base en los datos del índice,por lo que todos los registros para el mismo NUMERO-PEDIDO se agrupan entre sí. Para cada registro de PE-DIDO-ARTICULO que coincida con el NUMERO-PEDIDO deseado, lea directamente la tabla MAESTRA DEARTICULOS usando el NUMERO-ARTICULO como índice.La lógica es la misma para la situación inversa, como buscar en todos los pedidos un artículo pendiente quese haya recibido. Use el NUMERO-ARTICULO deseado para leer la tabla PEDIDO-ARTICULO directamente.El índice de PEDIDO-ARTICULO se establece en el NUMERO-ARTICULO. Para todos los registros de PEDI-DO-ARTICULO que coincidan, use el NUMERO-PEDIDO para leer la tabla PEDIDO directamente. Por último,lea la tabla MAESTRA DE CLIENTES directamente para obtener el NOMBRE-CLIENTE y DIRECCION me-diante el uso del NUMERO-CLIENTE en la tabla PEDIDO.Las tablas relacionales pueden tener relaciones con más tablas en la base de datos además de las dos con lasque se conectan directamente. Por ejemplo, podría haber una tabla relacional llamada Clase o Seccion para vincularestudiantes y cursos, ya que cada estudiante puede tomar muchos cursos y cada curso puede tener muchos estu-diantes. La tabla Seccion puede tener una relación con el Librotexto o Instructor para esa sección.NUMEROPEDIDONUMEROCLIENTEFECHAPEDIDOCANTIDADORDENADANUMEROARTICULODESCRIPCIONARTICULOCOSTOARTICULOPRECIOARTICULOCANTIDADDISPONIBLEPEDIDOPEDIDO-ARTICULOMAESTRA DE ARTICULOSNUMEROPEDIDONUMEROARTICULOPEDIDO-ARTICULO sirvecomo vínculo.FIGURA 13.24Cuando la relación es de muchos amuchos se necesitan tres archivos.www.xlibros.com
424 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOLINEAMIENTOS PARA EL DISEÑO DE RELACIONES DE ARCHIVOSMAESTROS/BASES DE DATOSHay que tener en consideración los siguientes lineamientos al diseñar relaciones de archivos maestros o bases dedatos:1. Cada entidad de datos separada debe crear una tabla maestra de base de datos. No debe combinar dosentidades distintas en un archivo. Por ejemplo, los artículos se compran de los distribuidores. La tablaMAESTRA DE ARTICULOS debe contener sólo información de los artículos y la tabla MAESTRA DEDISTRIBUIDORES debe contener sólo información de los distribuidores.2. Un campo de datos específico debe existir sólo en una tabla maestra. Por ejemplo, el NOMBRE CLIENTEpodría existir sólo en la tabla MAESTRA DE CLIENTES, no en la tabla PEDIDO o en ninguna otra tablamaestra. Las excepciones a este lineamiento son los campos claves o índices, que pueden estar en todas lastablas que sea necesario. Si un informe o pantalla necesita información de muchas tablas, los índices debenproveer los vínculos para obtener los registros requeridos.3. Cada relación de tabla maestra o base de datos debe tener programas para crear (C), leer (R), actualizar (U)y eliminar (D) registros (lo cual se abrevia como CRUD). En teoría sólo un programa debería agregar nuevosregistros y sólo un programa debería eliminar registros especificados. Sin embargo, muchos programaspueden ser responsables de modificar los campos de datos en el curso de las actividades de negociosnormales. Por ejemplo, un archivo MAESTRO DE CLIENTES podría tener un campo SALDO ACTUALque aumente en base al TOTAL PEDIDO en el programa de procesamiento de pedidos y disminuya con baseen un MONTO PAGO o a un MONTO DEVUELTO que provengan de dos programas adicionales.Restricciones de integridadLas restricciones de integridad son reglas que gobiernan las acciones de modificar y eliminar registros, y queayudan a mantener la precisión de los datos en la base de datos. Podemos aplicar tres tipos de restricciones deintegridad a una base de datos:1. Integridad de entidad.2. Integridad referencial.3. Integridad de dominio.Las restricciones de integridad de entidad son reglas que gobiernan la composición de claves primarias. La claveprimaria no puede tener un valor nulo; si la clave primaria es una clave compuesta, ninguno de los campos quecomponen la clave puede contener un valor nulo. Algunas bases de datos nos permiten definir una restricciónúnica o una clave única. Esta clave única sólo identifica un registro que no es una clave primaria. La diferenciaente una clave única y una clave primaria es que una clave única puede contener un valor nulo.La integridad referencial gobierna la naturaleza de los registros en una relación de uno a muchos. La tablaque está conectada en el extremo de uno de la relación se llama padre. La tabla conectada al extremo de muchosde la relación se llama tabla hija. Integridad referencial significa que todas las claves externas en la tabla de mu-chos (la tabla hija) deben tener un registro que coincida en la tabla padre. Por ende, no podemos agregar un re-gistro en la tabla hija (muchos) sin un registro que coincida en la tabla padre.Una segunda implicación es que no podemos cambiar una clave primaria que tenga registros que coincidanen la tabla hija. Si pudiéramos cambiar el registro padre, el resultado sería un registro hijo que tendría un distintoregistro padre o un registro huérfano, o un registro hijo sin un registro padre. Algunos ejemplos son un registroCALIFICACION para un estudiante que no estuviera en la tabla MAESTRA DE ESTUDIANTES y un registro PE-DIDO para un NUMERO CLIENTE inexistente. La última implicación de la integridad referencial es que nopodemos eliminar un registro padre que tenga registros hijos. Eso también produciría los registros huérfanos quemencionamos antes.La integridad referencial se implementa de dos formas. La primera es tener una base de datos restringida, enla cual el sistema pueda actualizar o eliminar un registro padre sólo si no hay registros hijos que coincidan. Unabase de datos en cascada eliminará o actualizará todos los registros hijos cuando se elimine o modifique un regis-tro padre (el padre desencadena los cambios).Es mejor una relación restringida al eliminar registros. ¡No sería conveniente eliminar un registro de uncliente y eliminar también todas las facturas pendientes! La metodología en cascada es mejor a la hora de modi-ficar registros. Si se modifica la clave primaria del registro de un estudiante, se modificarían también las clavesexternas (el NUMERO ESTUDIANTE en la tabla MAESTRA DE CURSOS) en todos los registros de cursospara ese estudiante.Las reglas de integridad de dominio se utilizan para validar los datos, como las comprobaciones de valida-ción de tabla, límite, rango, etcétera. En el capítulo 15 explicaremos estas reglas con más detalle. Por lo gene-www.xlibros.com
CAPÍTULO 13 • DISEÑO DE BASES DE DATOS 425ral, las reglas de dominio de integridad se almacenan en la estructura de la base de datos en una de dos formas.Las restricciones de verificación se definen a nivel de tabla y pueden hacer referencia a uno o más campos enla tabla. Un ejemplo es que la FECHA DE COMPRA siempre es menor o igual a la fecha actual. Las reglas sedefinen a nivel de base de datos con objetos separados y se pueden utilizar con varios campos. Un ejemplo es unvalor mayor a cero que se utilice para validar varios elementos.AnomalíasPueden ocurrir cuatro anomalías al crear tablas de bases de datos:1. Redundancia de datos.2. Anomalía de inserción.3. Anomalía de eliminación.4. Anomalía de actualización.La redundancia de los datos ocurre cuando se almacenan los mismos datos en más de un lugar en la basede datos (exceptuando las claves primarias que se almacenan como claves externas). Para resolver este problemahay que crear tablas que estén en 3NF.A T R A C T I V O D E L A M A CAunque Microsoft Word, Excel y PowerPoint están disponibles para el sistema operativo de la Mac, la única forma deejecutar Microsoft Access es ejecutar Windows en modo de virtualización o iniciar directamente en Windows. Existenotras dos opciones para la Mac: Bento y FileMaker Pro. Bento es una base de datos personal que permite a los usuariosrecopilar información en forma eficiente de la libreta de direcciones, la aplicación de calendario, Apple Mail y Micro-soft Excel; después podemos agregar campos al instante para crear una base de datos personalizable.Tal vez algunos usuarios encuentren a Bento algo limitante; para estos casos está el hermano mayor de Bento,FileMaker Pro. Éste es un programa completo de bases de datos relacionales que proporciona acceso directo a bases dedatos de SQL. Su característica distintiva es que las pantallas, los formularios y los informes para acceder a la base de datosestán completamente integrados con el motor de bases de datos.FIGURA 13.MACEjemplo de pantalla de Bento, una base de datos personal. Esta pantalla se utilizó conpermiso de FileMaker, Inc.www.xlibros.com
426 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOUna anomalía de inserción ocurre cuando no se conoce toda la clave primaria y la base de datos no puedeinsertar un nuevo registro, el cual violaría la integridad de entidad. Este problema ocurre por lo general cuando laclave primaria es una clave compuesta que contiene varios atributos más pequeños. Para evitar una anomalía deinserción hay que utilizar un número de secuencia para la clave primaria.Una anomalía de eliminación ocurre cuando se elimina un registro y como resultado se pierden otros da-tos relacionados. Un ejemplo es cuando un artículo tiene un número de distribuidor y ese artículo específicoes la única referencia a cierto distribuidor. Si se elimina ese artículo, no habría referencia al registro del dis-tribuidor.Una anomalía de actualización se produce cuando un cambio en el valor de un atributo ocasiona que la basede datos contenga datos inconsistentes o haya que modificar varios registros. Un ejemplo es cuando cambia elnombre de una calle en una ciudad. Podríamos cambiar algunos de los nombres de las calles y otros no, o ten-dríamos que asegurarnos que se hayan cambiado los nombres de todas las calles. Esto puede ocurrir cuando haydependencias transitivas y podemos prevenirlo mediante la creación de tablas que estén en 3NF (aunque en elejemplo de la calle, tal vez los datos estén en 3NF).USO DE LA BASE DE DATOSHay varios pasos que debemos llevar a cabo en orden secuencial para asegurar que la base de datos sea útil parapresentar los datos.Pasos para recuperar y presentar los datosHay ocho pasos en el proceso de recuperación y presentación de los datos:1. Seleccionar una relación de la base de datos.2. Unir las relaciones.3. Proyectar las columnas de la relación.4. Seleccionar filas de la relación.5. Derivar nuevos atributos.6. Indexar u ordenar filas.7. Calcular totales y medidas de desempeño.8. Presentar los datos.Hay que llevar a cabo los pasos primero y último, pero los seis pasos intermedios son opcionales, dependiendode la forma en que se vayan a usar los datos. La figura 13.25 es una guía visual para los pasos.El paso final en la recuperación de los datos es la presentación. Podemos presentar los datos que se abstraende la base de datos en muchas formas. Algunas veces se presentan en formato tabular, algunas veces en gráficosy otras como una respuesta de una sola palabra en pantalla. El diseño de la salida, como vimos en el capítulo 11,provee un análisis más detallado sobre los objetivos, formas y métodos de presentación.DESNORMALIZACIÓNUna de las principales razones de la normalización es organizar los datos de manera que se reduzcan los datosredundantes. Si no tenemos que almacenar los mismos datos una y otra vez, podemos ahorrar mucho espacio.Dicha organización permite al analista reducir la cantidad de almacenamiento necesario, algo que era muy im-portante cuando el almacenamiento era costoso.En la última sección aprendimos que para usar datos normalizados tuvimos que progresar por una serie depasos que involucran la unión, el ordenamiento y la síntesis. Cuando la velocidad de consultar la base de datos(es decir, hacer una pregunta y requerir una respuesta rápida) es crítica, tal vez sea importante almacenar los da-tos de otras formas.La desnormalización es el proceso de tomar el modelo de datos lógico y transformarlo en un modelo físicoque sea eficiente para las tareas requeridas con más frecuencia. Estas tareas pueden incluir la generación de in-formes, pero también pueden implicar consultas más eficientes. Las consultas complejas como el procesamientoanalítico en línea (OLAP), así como los procesos de minería de datos y descubrimiento de conocimiento en basesde datos (KDD), también pueden usar bases de datos que estén desnormalizadas.Podemos llevar a cabo la desnormalización de varias formas. La figura 13.26 muestra uno de los métodos.Primero podemos tomar una relación de muchos a muchos, como la de VENDEDOR y CLIENTE, que compar-ten la entidad asociativa VENTAS. Al combinar los atributos de VENDEDOR y VENTAS podemos evitar unode los procesos de unión. Esto puede producir una cantidad considerable de duplicación de datos, pero mejora laeficiencia de las consultas sobre los patrones de ventas.www.xlibros.com
CAPÍTULO 13 • DISEÑO DE BASES DE DATOS 427Otra de las razones de desnormalizar es evitar la referencia repetida a una tabla de búsqueda. Tal vez seamás eficiente repetir la misma información (por ejemplo: ciudad, estado y código postal) incluso si por lo gene-ral esta información se puede almacenar sólo como un código postal. Por ende, en el ejemplo de ventas podría-mos combinar CLIENTE y ALMACEN.Finalmente veremos las relaciones de uno a uno, ya que es muy probable que se combinen por razones prác-ticas. Si descubrimos que muchas de las consultas relacionadas con los pedidos también se interesan en sabercómo se envió el pedido, sería conveniente combinar, o desnormalizar. Así, en el ejemplo algunos de los detallespueden aparecer tanto en DETALLES-PEDIDO como en DETALLES-ENVIO al llevar a cabo la desnormaliza-ción.Seleccionar una(s)relación(es) de la basede datos.Unir las relaciones.Proyectar las columnasde la relación.Seleccionar filas dela relación.Derivar nuevos atributos.Indexar u ordenar las filas.Calcular los totales y lasmedidas de desempeño.Presentar los datos.INFORMEFIGURA 13.25Los datos se obtienen y presentanen ocho pasos.www.xlibros.com
428 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOVENDEDORNUMEROVENDEDORNOMBREVENDEDORAREAVENTASVENTAS-VENDEDOR-DESNORMALIZADANUMEROVENDEDORNUMEROCLIENTENUMEROCLIENTEMONTOVENTASVENTASNUMEROALMACENUBICACIONALMACENALMACENNUMEROCLIENTENOMBRECLIENTEMONTOVENTASNUMEROALMACENCLIENTENUMEROCLIENTENOMBRECLIENTENUMEROALMACENUBICACIONALMACENCLIENTE-DESNORMALIZADANUMEROCLIENTENOMBRECLIENTENUMEROPEDIDOFECHAPEDIDOMONTOPEDIDODETALLES-PEDIDODETALLES-PEDIDOS-DESNORMALIZADANUMEROENVIONOMBREENVIODIRECCIONENVIOFECHAENVIOMETODOENVIONUMEROCLIENTEDETALLES-ENVIONUMEROENVIONOMBREENVIODIRECCIONENVIOFECHAENVIOMETODOENVIONUMEROCLIENTEDETALLES-ENVIO-DESNORMALIZADANUMEROPEDIDOFECHAPEDIDOCombinación deuna entidad conuna entidadasociativaCombinación derelaciones 1:1Combinación detablas debúsquedaNUMEROVENDEDORNOMBREVENDEDORAREAVENTASNUMEROCLIENTENOMBRECLIENTENUMEROPEDIDOFECHAPEDIDOMONTOPEDIDONUMEROENVIONOMBREENVIODIRECCIONENVIOFECHA ENVIOFIGURA 13.26Tres ejemplos dedesnormalización para hacer elacceso más eficiente.www.xlibros.com
CAPÍTULO 13 • DISEÑO DE BASES DE DATOS 429ALMACENES CORPORATIVOS DE DATOSLos almacenes corporativos de datos son distintos de las bases de datos tradicionales. El propósito de un almacéncorporativo de datos es organizar la información para consultas rápidas y efectivas. Es cierto que almacenan da-tos desnormalizados, pero van un paso más allá. Organizan los datos con base en los temas. En la mayoría de loscasos el almacén corporativo de datos es más que una base de datos que se procesa de manera que los datos serepresenten en maneras uniformes. Por lo tanto, los datos almacenados en los almacenes de datos provienen dedistintas fuentes, por lo general bases de datos que se establecieron para distintos fines.El concepto de almacén corporativo de datos es único. Las diferencias entre los almacenes corporativos dedatos y las bases de datos tradicionales incluyen lo siguiente:1. En un almacén corporativo de datos, los datos se organizan con base en los temas principales en vez de lastransacciones individuales.2. Por lo general, los datos en un almacén corporativo de datos se organizan como datos sintetizados en vez delos datos puros detallados que se encuentran en una base de datos orientada a transacciones.3. Los datos de un almacén corporativo de datos cubren un marco de tiempo mucho mayor que los datos en lasbases de datos tradicionales orientadas a transacciones, ya que comúnmente las consultas se relacionan conla toma de decisiones a largo plazo, en vez de los detalles diarios de las transacciones.4. La mayoría de los almacenes corporativos de datos se organizan para consultas rápidas, mientras que lasbases de datos más tradicionales están normalizadas y estructuradas de tal forma que provean unalmacenamiento eficiente de la información.5. Por lo general, los almacenes corporativos de datos están optimizados para responder consultas complejas de losgerentes y analistas conocidas como OLAP, en vez de las consultas simples que se realizan en forma repetida.6. Los almacenes corporativos de datos permiten un fácil acceso a través de software de minería de datos(conocido como siftware), el cual busca patrones y puede identificar las relaciones que los humanosencargados de tomar decisiones no imaginan.7. Los almacenes corporativos de datos no sólo incluyen una, sino varias bases de datos que se han procesadode manera que los datos del almacén corporativo se definan con uniformidad. Estas bases de datos seconocen como datos limpios.8. Comúnmente los almacenes corporativos de datos incluyen información de fuentes externas (como uninforme industrial, el archivo de la empresa en la Comisión de Bolsa y Valores, o incluso información sobrelos productos de los competidores), así como datos generados para uso interno.El proceso de crear un almacén corporativo de datos es una tarea monumental. El analista necesita recopilar datosde una variedad de fuentes y traducir esos datos a una forma común. Por ejemplo, tal vez una base de datos almaceneinformación sobre los géneros como “Masculino” y “Femenino”, otra la almacene como “M” y “F”, y una tercera laalmacene como “1” y “0”. El analista necesita establecer un estándar y convertir todos los datos al mismo formato.Una vez que están limpios los datos, el analista debe decidir cómo sintetizarlos. Una vez sintetizados se pier-den los detalles, por lo que el analista tiene que predecir el tipo de consultas que se podrían realizar.Después, el analista necesita diseñar el almacén corporativo de datos mediante la organización lógica (y talvez el agrupamiento físico) de los datos por tema, lo cual requiere de mucho análisis y diseño. El analista nece-sita conocer mucho sobre la empresa.El tamaño de los almacenes corporativos de datos ordinarios tiende a estar entre los 50 gigabytes hasta de-cenas de terabytes. Como son grandes, también son costosos. La mayoría de los almacenes corporativos de datoscuestan millones de dólares.Procesamiento analítico en líneaEl procesamiento analítico en línea (OLAP) fue introducido por E. F. Codd en 1993. Su objetivo era responder alas preguntas complejas de los encargados de tomar decisiones. Codd concluyó que el encargado de tomar deci-siones tenía que analizar los datos en distintas formas. Por lo tanto, la base de datos en sí tenía que ser multidi-mensional. Muchas personas consideran que OLAP es el Cubo de Rubik de los datos. Se pueden ver los datos detodos los distintos lados y también se pueden manipular al girarlos o torcerlos, para que tengan sentido.Esta metodología OLAP validó el concepto de los almacenes corporativos de datos. Después surgió la ne-cesidad de organizar los datos en formas que permitieran consultas eficientes. Desde luego que OLAP implicael procesamiento de los datos por medio de manipulación, síntesis y cálculo, por lo que hay más de un almacéncorporativo de datos involucrado.Minería de datosLa minería de datos puede identificar patrones que un humano no puede. O el encargado de tomar decisionesno puede ver un patrón, o tal vez no puede pensar en preguntar si existe ese patrón. Los algoritmos de mineríade datos buscan patrones en los almacenes corporativos de datos mediante el uso de algoritmos. La figura 13.27ilustra el concepto de minería de datos.www.xlibros.com
430 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOO P O R T U N I D A D D E C O N S U L T O R Í A 1 3 . 2Almacenamiento de minerales para la salud, minería de datosEsther See, una de las empleadas de Marathon Vitamin Shop, seacerca al propietario Bill Berry para comentarle: “He observado quenuestros clientes tienen distintos hábitos. Algunos vienen con regu-laridad y otros son menos predecibles”, dice Esther. “Cuando veo aun cliente regular, me enorgullezco de anticipar lo que el cliente vaa comprar e incluso hasta puedo sugerirle otras vitaminas de suagrado. Creo que genero más ventas de esa forma. Además, elcliente está más contento”.Esther continúa: “Aunque desearía poder ayudar mejor a algu-nos de los clientes que vienen con menos frecuencia”.“Es una actitud muy favorable, Esther, además de que ayuda anuestra tienda”, le responde Bill. “Sé que podemos beneficiarnos deotras formas si logramos manejar mejor los patrones de los clientes. Porejemplo, podemos estar seguros de tener un artículo en existencia”.Ester asiente y agrega: “No es sólo el tipo de vitamina de lo queestoy hablando. Algunos clientes prefieren una marca en vez de otra.No sé si depende de su nivel de ingreso o de los intereses que tenganen actividades de esparcimiento. Como los deportes, por ejemplo”.“Ya veo, Srita. See” dice Bill sonriendo, “¿tiene algo enmente?”.“Sí, Sr. Berry”, dice en un tono más formal. “Deberíamos or-ganizar los datos que tenemos sobre nuestros clientes mediante elconcepto de un almacén corporativo de datos. Podemos fusionar losdatos que tenemos con la información de otras fuentes. Así pode-mos buscar patrones en nuestros datos. Tal vez podamos identificarlos patrones existentes y predecir nuevas tendencias”.Piense cómo organizaría un almacén corporativo de datos paraMarathon Vitamin Shops. ¿Qué otras bases de datos le gustaría fu-sionar en el almacén de datos? ¿Qué tipo de patrones debería estarbuscando Bill Berry? Identifique estos patrones por tipo (asociacio-nes, secuencias, agrupamiento o tendencias) y descríbalos en uno odos párrafos.La minería de datos se conoce también por otro nombre: descubrimiento de conocimiento en bases de da-tos (KDD). Algunos piensan que KDD es distinto a la minería de datos, debido a que su objetivo es ayudar alos encargados de tomar decisiones a encontrar patrones, en vez de ceder el control a un algoritmo para que losencuentre. Las ayudas disponibles para las decisiones se conocen como siftware; incluyen el análisis estadístico,los árboles de decisión, las redes neurales, los agentes inteligentes, la lógica difusa y la visualización de datos.DatosexternosDatos que semantienen enforma internaProspectos/listasde correo de otrasempresasHistorial de comprasdel cliente con sutarjeta de créditoDatos demográficosdel cliente procedentesde la municipalidadTarjeta degarantía que envióel cliente Información dela encuesta quellenó el clientePerfil de cliente quese obtuvo cuandoel cliente hizo unacompra en la WebOferta promocionalespecial parael clienteDatosexternosDatosexternosCustomer Process 1Customer OrderContains customer order information and is used to update thecustomer master and item files and to produce an order record.IDNameDescriptionCommentsSource DestinationType of Data FlowFile Screen Report Form InternalData Structure Traveling with the Flow Volume/TimeOrder Information 10/hourAn order record information for one customer order. The ordermay be received by mail, by FAX, or by the customer telephoning the orderprocessing department directly.FIGURA 13.27La minería de datos recopilainformación personal sobre losclientes, en un esfuerzo por sermás específicos al interpretar yanticiparse a sus preferencias.www.xlibros.com
CAPÍTULO 13 • DISEÑO DE BASES DE DATOS 431Los tipos de patrones que los encargados de tomar decisiones tratan de identificar incluyen las asociacio-nes, las secuencias, el agrupamiento y las tendencias. Las asociaciones son patrones que ocurren en conjunto almismo tiempo. Por ejemplo, una persona que compra cereal por lo general compra leche para acompañarlo. Porotro lado, las secuencias son patrones de acciones que se llevan a cabo durante un periodo de tiempo. Por ejem-plo, si una familia compra una casa este año, es muy probable que vayan a comprar bienes de consumo durade-ros (un refrigerador, o lavadora y secadora) el próximo. El agrupamiento es el patrón que se desarrolla entre ungrupo de personas. Por ejemplo, los clientes que viven en un código postal específico tal vez tiendan a comprarun automóvil específico. Por último, las tendencias son patrones que se observan durante un periodo de tiempo.Por ejemplo, tal vez los consumidores pasen de comprar artículos genéricos a productos premium.El concepto de minería de datos surgió del deseo de usar una base de datos para una focalización más selec-tiva de los clientes. Las primeras metodologías para el correo directo incluían el uso de la información del códigoO P O R T U N I D A D D E C O N S U L T O R Í A 1 3 . 3Pérdida de prospectos“La participación en el mercado puede ser un verdadero pro-blema”, dice Ryan Taylor, director de sistemas de marketing parauna aseguradora médica de la Costa Este de Estados Unidos. “Unode los mayores retos al que hacemos frente es cómo identificarbuenos prospectos para nuestros vendedores. Con más del 50 porciento de participación en el mercado, debemos eliminar los nom-bres de la mayoría de los prospectos que compramos antes de llenarnuestra base de datos de marketing; es imprescindible que lo haga-mos bien, ya que ésta es parte crucial de nuestro arsenal de herra-mientas de información estratégica de la empresa”.Ryan explica a Chandler, uno de los miembros del equipo deanalistas de sistemas que usted dirige: “Una base de datos de mar-keting, o MDB para abreviar, es una poderosa base de datos relacio-nal que representa el corazón de los sistemas de marketing. Nuestrabase de datos de marketing se utiliza para proveer información paratodos los sistemas de marketing. En estos sistemas se incluyen lasherramientas de productividad, como nuestra Automatización delas fuerzas de ventas y nuestros Sistemas de correo masivo, diseña-dos para ayudar a los vendedores a administrar el ciclo de ventas.También se incluyen las herramientas analíticas, como nuestrossistemas de información geográfica (GIS) o las herramientas dellenguaje gráfico de consulta (CQL), que están diseñadas para pro-veer soporte para las decisiones.“Pero la principal función de una base de datos de marketing esrastrear la información sobre nuestros clientes y prospectos. En laactualidad rastreamos la información geográfica, demográfica y psi-cográfica o, como me gusta decirlo, dónde viven, quiénes son y cómopiensan”.“Las bases de datos de marketing más simples se pueden creara partir de sólo tres archivos: Perfil de prospectos, Perfil de clientese Historial de compras y pagos”.“Una vez diseñada la base de datos de marketing, el siguientereto es decidir cómo llenarla. En la actualidad compramos nuestrainformación de prospectos a un distribuidor de listas. Como la es-trategia de marketing de nuestra empresa se basa en el marketing enmasa, compramos todos los negocios en nuestra área. Debido a estevolumen, pagamos menos de diez centavos de dólar por cada pros-pecto. No obstante, si una empresa practica la diferenciación deproductos, es probable que su base de prospectos sea más definida.Esta empresa probablemente pagaría una prima por datos más deta-llados que se validaron con cuidado”, explica Ryan.“Nos enfrentamos a un verdadero reto. Si tuviera un dólar porcada vez que un representante se queja conmigo sobre la direcciónequivocada de un prospecto, podría retirarme y mudarme a Flo-rida”, bromea Ryan. “Mi trabajo es identificar cuáles prospectosson malos. No es muy difícil si sólo hay unos cuantos miles, pero¿qué hace uno cuando hay más de un cuarto de millón?”.Ryan continúa, “Como usamos estos datos con frecuencia paraenviar muchos correos, es muy importante para nosotros asegurarque los nombres y direcciones en ese archivo tengan la mayor exac-titud posible. Por ejemplo, deben conformarse a los estándarespostales y no debe haber duplicados.”“Para lograr esto utilizamos una técnica llamada higiene dedatos. ¿Qué tal suena ese término especializado? Por lo generallogramos la higiene de los datos mediante software especializado,el cual se utiliza para determinar la validez de una dirección. Estesoftware relaciona la dirección de la base de datos con su propiabase de datos interna de calles y rangos de números válidos en unaciudad o código postal específico”.Ryan prosigue: “Uno de los otros retos de datos a los que seenfrentan los que trabajan en marketing es la eliminación de regis-tros duplicados en la base de datos de marketing. Hay dos tipos deduplicados a buscar: duplicados internos, que consisten en la exis-tencia de varios registros del mismo cliente o prospecto, y los du-plicados externos, que representan nuestra incapacidad de eliminarclientes de nuestros datos de prospectos”.“Los duplicados internos crean problemas en los informes eincrementan los costos del servicio de correo. Los duplicados exter-nos son incluso peores: son tanto costosos como vergonzosos”.Ryan explica: “Una de las cosas más vergonzosas para un represen-tante de ventas es realizar una llamada a un prospecto sólo paradescubrir que ya es nuestro cliente. Por lo general, el cliente sequeda con la sensación de que es sólo un número en una de nuestrascomputadoras. Además de la mala impresión, desperdicia el valiosotiempo y los recursos”.Describa en dos párrafos algunas técnicas que podría usarRyan para ayudar a identificar los duplicados internos y externos enla base de datos de marketing de su empresa. Describa cómo crearíauna base de datos de marketing para minimizar los duplicados (useun párrafo). ¿Hay métodos operacionales que podrían reducir esteproblema? Haga una lista de ellos. ¿Quién más en la organizaciónpodría ayudar con este proceso? Proporcione una lista breve. Reco-miende en un párrafo los métodos para Chandler y los demás miem-bros de su equipo de análisis de sistemas que se puedan usar paraayudar a reclutar y asegurar la asistencia de otros miembros rele-vantes de la organización.www.xlibros.com
432 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOpostal como una forma de determinar cuál podría ser el ingreso de una familia (suponiendo que ésta debe generarsuficiente ingreso como para poder vivir en el prestigioso código postal 90210 de Beverly Hills o en algún otrovecindario acomodado). Era una manera (imperfecta, desde luego) para limitar el número de catálogos enviados.La minería de datos lleva este concepto un paso más allá. Si suponemos que el comportamiento anterior esun buen vaticinador de las compras futuras, se recopila una gran cantidad de datos sobre una persona específicaa partir de las compras con su tarjeta de crédito. La empresa puede identificar en qué tiendas compramos, quéhemos comprado y cuánto pagamos por un artículo, además de saber cuándo y con qué frecuencia viajamos. Losdatos también se introducen, almacenan y utilizan para una variedad de propósitos cuando llenamos las garan-tías, solicitamos una licencia de conductor, respondemos a una oferta gratuita o solicitamos una tarjeta de mem-bresía en una tienda de renta de videos. Lo que es más: las empresas comparten estos datos y a menudo hacendinero al venderlos a terceros.American Express ha sido líder en minería de datos para fines de marketing. American Express le envíacupones de descuento para nuevas tiendas o entretenimiento cuando le envía la factura de su tarjeta de crédito,habiendo determinado que usted compró en tiendas similares o asistió a eventos similares. General Motors ofreceuna tarjeta MasterCard que permite a los clientes acumular puntos de bonificación para la compra de un nuevoautomóvil, y después envía información sobre los nuevos vehículos en el momento en que sería más probableque el consumidor esté interesado en comprar un auto nuevo.Sin embargo, la metodología de minería de datos también presenta sus problemas. En primer lugar, loscostos pueden ser demasiado altos como para poder justificar la minería de datos, algo que tal vez se descubrasólo hasta después de haber acumulado enormes costos de preparación. En segundo lugar, la minería de datostiene que estar coordinada de manera que varios departamentos o subsidiarias no traten de contactar al cliente almismo tiempo. Además, los clientes tal vez piensen que se ha invadido su privacidad y resientan las ofertas quereciben. Por último, los clientes podrían pensar que los perfiles creados únicamente con base en sus compras contarjeta de crédito presentan una imagen bastante distorsionada de quiénes son en realidad.Los analistas deben asumir responsabilidad en cuanto a los aspectos éticos de cualquier proyecto de mineríade datos propuesto. Hay que considerar y averiguar, junto con el cliente, todos los detalles sobre el periodo quese mantendrá el material de los perfiles, la confidencialidad del mismo, las medidas de protección de la priva-cidad incluidas y los usos que se le darán. Las oportunidades de abuso son evidentes, por lo que debemos estarprotegidos. Para los consumidores, la minería de datos es sólo otra tecnología más que se les impone, y si ellosno desean que pase esto, los esfuerzos de minería de datos fracasarán.RESUMENUna decisión importante en el diseño de un sistema de infor-mación es la forma en que se almacenan los datos. Hay dosmetodologías para ello: la primera consiste en almacenarlos enarchivos individuales, usando un archivo para cada aplicación;la segunda, en desarrollar una base de datos que puedan com-partir muchos usuarios para varias aplicaciones, a medida quesurja la necesidad.Para comprender el almacenamiento de los datos hay quecaptar tres ámbitos: realidad, datos y metadatos. Una entidad esun objeto o evento por el que estamos dispuestos a recolectar yalmacenar datos. Los atributos son las características reales deestas entidades. Los elementos de datos pueden tener valores yse pueden organizar en registros a los que se puede acceder me-diante una clave. Los metadatos describen a los datos y puedencontener restricciones sobre el valor de un elemento de datos(por ejemplo, que sea sólo numérico).Algunos ejemplos de archivos convencionales son los ar-chivos maestros, los archivos de tablas, los archivos de transac-ciones, los archivos de trabajo y los archivos de informes. Porlo general, las bases de datos se construyen con una estructurarelacional. Sin embargo, los sistemas heredados pueden tenerestructuras jerárquicas o de redes.La normalización es el proceso que toma las vistas deusuario y las transforma en estructuras menos complejas co-nocidas como relaciones normalizadas. Hay tres pasos en elproceso de normalización. En primer lugar se eliminan todoslos grupos repetitivos. En segundo lugar se eliminan todas lasdependencias parciales. Por último se quitan las dependenciastransitivas. Una vez que se completan estos tres pasos, el re-sultado es la creación de numerosas relaciones que están en latercera forma normal (3NF).Podemos usar el diagrama de entidad-relación para de-terminar las claves requeridas para un registro o una relaciónde una base de datos. Los tres lineamientos a seguir al diseñartablas maestras o relaciones de bases de datos son: 1) cada en-tidad de datos separada debe crear una tabla maestra (no com-binar dos entidades distintas dentro de una tabla); 2) un campode datos específico debe existir en sólo una tabla maestra; y 3) cadatabla maestra o relación de base de datos debe tener programaspara crear (C), leer (R), actualizar (U) y eliminar (E).El proceso de recuperar datos puede involucrar hastaocho pasos: 1) seleccionar una relación, 2) unir dos relaciones,3) proyectar (seleccionar) las columnas, 4) seleccionar las filasrelevantes, 5) derivar nuevos atributos, 6) ordenar o indexar fi-las, 7) calcular totales y medidas de desempeño, y finalmente8) presentar los resultados al usuario.La desnormalización es un proceso que toma el modelo dedatos lógico y lo transforma en un modelo físico que sea efi-ciente para las tareas más necesarias. Los almacenes corporativosde datos difieren de las bases de datos tradicionales en muchosaspectos; uno de ellos es que almacenan datos desnormalizados,los cuales están organizados en base a temas. Los almacenes cor-www.xlibros.com
CAPÍTULO 13 • DISEÑO DE BASES DE DATOS 433porativos de datos permiten un fácil acceso mediante el softwarede minería de datos también conocido como software, el cualbusca patrones e identifica las relaciones que no pueden imagi-nar los humanos encargados de tomar decisiones.La minería de datos involucra el uso de una base de da-tos para una focalización más selectiva de los clientes. Supo-niendo que el comportamiento anterior es un buen vaticinadorde las compras futuras, las empresas recopilan datos sobre unapersona a partir de las compras con su tarjeta de crédito, lassolicitudes de licencia de conductor, las tarjetas de garantías,etcétera. La minería de datos puede ser poderosa, pero tambiénpuede ser costosa y debe estar coordinada. Además, puede in-fringir la privacidad del consumidor o incluso los derechos ci-viles de una persona.E X P E R I E N C I A D E H Y P E R C A S E ® 1 3“ Escuché muchas cosas buenas sobre su equipo de las personasen Sistemas administrativos. Incluso se ganaron un elogio bienmerecido de Tom Ketcham, a quien no es muy fácil complacer enestos días. Hasta él está viendo algunas posibilidades. Creo quehasta ahora han logrado mantenernos unidos... a menos que nosvayamos en distintas direcciones otra vez. Sólo estoy bromeando.Les dije que pensaran acerca de si somos una familia, un zoológicoo una zona de guerra. Ahora es el momento de empezar a diseñarsistemas que se adapten a nosotros. Ya ha estado usted aquí eltiempo suficiente como para poder formarse esas opiniones. Esperoque sean favorables. Creo que nuestra famosa hospitalidad sureña ysentido del humor notablemente británico deberían ayudar a in-fluenciarlo, ¿o no? Estuve tan ocupado tratando de persuadirlo deque valemos la pena el esfuerzo que olvidé decirle: Tom y Snowdenhan acordado pensar en cambiar a una base de datos de algún tipo.¿Podría tener esto listo en las próximas dos semanas? Tom está enuna conferencia en Minneapolis, pero cuando regrese sería exce-lente que usted tuviera algunas ideas al respecto para que Snowdeny Tom discutan sobre ellas. Siga perseverando”.Preguntas de HYPERCASE1. Suponga que los miembros de su equipo han usado el Informede características de los clientes de la Unidad de capacitación(Training Unit Client Characteristics Report) para diseñar unatabla de base de datos que almacene la información contenidaen este informe, con el siguiente resultado:2. Aplique la normalización a la tabla que su equipo desarrollópara eliminar los grupos repetitivos. Muestre sus resultados.3. Elimine las dependencias transitivas de su tabla y muestre latabla de datos resultante.PALABRAS CLAVE Y FRASESadministrador de base de datosalmacén de datosalmacenamiento de datosanomalía de actualizaciónanomalía de eliminaciónarchivo convencionalarchivo de informesarchivo de tablasarchivo de trabajoarchivo de transaccionesarchivo maestroatributobase de datoscaracteres especialesclave concatenadaclave primariaclave secundariaCRUD (crear, leer, actualizar y eliminar)datos limpiosdependencias parcialesdependencias transitivasdesnormalizaciónNombre de tabla: TABLA CLIENTESNombre de columna DescripciónID CLIENTE(clave primaria)Nemónico inventado por losusuarios, como STHSP para StateHospitalNOMBRE CLIENTE El nombre actual completo delclienteDIRECCION La dirección del clienteCONTACTO El nombre de la persona decontactoNUMERO TELEFONICO El número telefónico de la personade contactoCLASE El tipo de institución (Hospital deadministración de veteranos,clínica, otro)TAMANIO-PERSONAL Tamaño del personal del cliente(número)NIVEL CAPACITACION Mínimo nivel de experienciarequerido del personal (según lodefinido por la clase)CTD-EQUIP El número de equipos médicos quetiene el clienteTIPO EQUIP El tipo de equipos médicos (porejemplo, rayos X, IRM, TAC)MODELO-ANIO EQUIP El modelo y año de cada equipomédicowww.xlibros.com
434 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOdiagrama de burbujadiagrama de modelo de datosdiagrama entidad-relación (E-R)elemento de datoselemento de informaciónentidadestructura de datos de redestructura de datos jerárquicaestructura de datos relacionalgrupo repetidoidentificador de objetos (OID)integridad de dominiointegridad referencialminería de datosnormalizaciónprimera forma normal (1NF)procesamiento analítico en línea (OLAP)realidad, datos y metadatosrecuperaciónrecuperación de informaciónregistrorelaciónrelación sin normalizarrestricción de integridad de entidadsegunda forma normal (2NF)siftwaresistema de administración de bases de datos (DBMS)subtipo de entidadtercera forma normal (3NF)vista físicavista lógicaPREGUNTAS DE REPASO1. ¿Cuáles son las ventajas de organizar el almacenamiento de datos como archivos separados?2. ¿Cuáles son las ventajas de organizar el almacenamiento de datos mediante una metodología de base de datos?3. ¿Cuáles son las medidas de efectividad del diseño de bases de datos?4. Mencione algunos ejemplos de entidades y sus atributos.5. ¿Cuál es la diferencia entre una clave primaria y un identificador de objetos?6. Defina el término metadatos. ¿Cuál es el propósito de los metadatos?7. Mencione los tipos de archivos convencionales de uso común. ¿Cuáles de éstos son archivos temporales?8. Mencione los tres tipos principales de organización de bases de datos.9. Defina el término normalización.10. ¿Qué se elimina cuando una relación se convierte a la primera forma normal?11. ¿Qué se elimina cuando una relación se convierte de 1NF a 2NF?12. ¿Qué se elimina cuando una relación se convierte de 2NF a 3NF?13. Mencione las tres restricciones de entidad. Describa en un enunciado el significado de cada restricción de entidad.14. Describa las cuatro anomalías que pueden ocurrir al crear tablas de bases de datos.15. Mencione los ocho pasos para recuperar, preordenar y presentar los datos.16. ¿Qué hace la unión? ¿Qué es la proyección? ¿Qué es la selección?17. Defina desnormalización.18. Explique las diferencias entre bases de datos tradicionales y almacenes corporativos de datos.19. Defina qué hace el software cuando se utiliza en minería de datos.PROBLEMAS1. Dado el siguiente archivo de arrendatarios:a. Muestre un ejemplo de proyección.b. Muestre un ejemplo de selección.c. Muestre dos ejemplos de cómo ordenar filas.d. Muestre un ejemplo de cómo calcular los totales.Número deregistroApellido paterno Número deapartamentoRenta Expiración delarrendamiento41 Warkentin 102 550 4/3042 Buffington 204 600 4/3043 Schuldt 103 550 4/3044 Tang 209 600 5/3145 Cho 203 550 5/3146 Yoo 203 550 6/3047 Pyle 101 500 6/30www.xlibros.com
CAPÍTULO 13 • DISEÑO DE BASES DE DATOS 4352. El siguiente es un ejemplo de una boleta de calificaciones para dos estudiantes en la University of Southern New Jersey:Dibuje un diagrama de modelo de datos con asociaciones para la vista de usuario.3. Convierta la vista de usuario del problema 2 a una relación 3NF. Muestre cada paso del proceso.4. ¿Qué problema podría surgir al utilizar el número de curso como clave primaria para los datos en el problema 2?(Sugerencia: Piense sobre lo que ocurriría si cambia el Nombre del departamento [no se muestra en los datos]).5. Dibuje un diagrama de entidad-relación para la siguiente situación: muchos estudiantes practican muchos deportes. Unapersona denominada entrenador en jefe asume el papel de entrenador en todos estos deportes. Cada una de las entidadestiene un número y un nombre (haga las suposiciones necesarias para completar un diagrama razonable. Haga una lista desus suposiciones).6. El diagrama de entidad-relación que dibujó en el problema 5 representa las entidades de datos necesarias paraimplementar un sistema para rastrear a los estudiantes y los deportes que practican. Haga una lista de las tablas necesariaspara implementar el sistema, junto con las claves primarias, secundarias y externas que se requieren para vincular lastablas.7. Dibuje un diagrama de entidad-relación para la siguiente situación: una panadería comercial fabrica muchos productos:panes, postres, pasteles especiales y muchos otros productos horneados. La panadería compara a varios distribuidores losingredientes como harina, especias y leche. Algunas veces compran un ingrediente a un solo distribuidor y otras veces locompran a varios. La panadería tiene clientes comerciales, como escuelas y restaurantes, que hacen pedidos de productoshorneados con regularidad. Cada producto horneado tiene un especialista que supervisa la organización de la operaciónde la panadería e inspecciona el producto terminado.8. Haga una lista de las tablas y claves que se necesitan para implementar el sistema de la panadería comercial.9. Dibuje un diagrama E-R para el sistema de pedidos de la figura 13.24.10. Dibuje un diagrama de flujo de datos para colocar un pedido. Base su diagrama de flujo de datos en el diagrama E-R.11. Cree un diagrama de entidad-relación para un paquete de software de genealogía llamado “PeopleTree” con el que sepuede llevar un registro de los ancestros. Suponga que cada persona estará en una tabla Persona y que una persona puedetener padres (un padre y una madre) biológicos y padres (un padre y una madre) adoptivos. Las madres y padres sedeben almacenar en la tabla Persona también. Cada persona sólo debe tener un lugar de nacimiento, el cual se debealmacenar en la tabla Persona. Muchas personas pueden nacer en el mismo lugar.12. Defina la clave primaria utilizada para las tablas Persona y Lugar.USNJ - Boleta de calificaciones – Primavera – Semestre 2010Nombre: I. M. Smarte Especialidad: MISEstudiante: 053-06929-24 Estado: AvanzadoNúmero de curso Título del curso ProfesorDepartamentodel profesor CalificaciónMIS 403 Análisis de sistemas Diggs, T. MIS AMIS 411 Fundamentos conceptuales Barre, G. MIS AMIS 420 Factores humanos en SI Barre, G. MIS BCIS 412 Diseño de bases de datos Menzel, I. CIS ADESC 353 Modelos de administración Murney, J. MIS AUSNJ - Boleta de calificaciones – Primavera – Semestre 2010Nombre: E. Z. GrayedEstudiante: 472-6124-59Especialidad: MISEstado: AvanzadoNúmero de curso Título del curso ProfesorDepartamento delprofesor CalificaciónMIS 403 Análisis de sistemas Diggs, T. MIS BMIS 411 Fundamentos conceptuales Barre, G. MIS Awww.xlibros.com
436 PARTE IV • LOS FUNDAMENTOS DEL DISEÑO13. GaiaOrganix es una cooperativa de mayoreo de comida orgánica que vincula a productores y consumidores.GaiaOrganix negocia las compras que las tiendas de abarrotes y demás tiendas relacionadas hacen a los granjeros quecultivan una variedad de cosechas, como frutas, vegetales y granos. Cada granjero puede producir varias cosechas yvarios granjeros pueden producir una cosecha. Para proveer el nivel más alto de productos frescos, éstos se envíandirectamente de la granja a la tienda. Cada tienda puede comprar de muchas granjas y cada granja puede vender amuchas tiendas. Dibuje un diagrama de entidad-relación en la tercera forma normal que muestre la relación entre elproductor (granjas) y el vendedor (tiendas).14. ArticleIndex.com es una empresa que produce índices de artículos de revistas y periódicos para una disciplina específica.Un usuario Web debe tener la capacidad de introducir el tema o los autores de un artículo para recibir una lista detalladade todos los artículos y periódicos en los que se encontró el tema. Cada artículo puede tener muchos autores y cada autorpuede escribir muchos artículos. Un artículo puede existir sólo en un periódico, pero cada periódico por lo generalcontiene muchos artículos. Cada artículo puede tener muchos temas y cada tema puede estar en muchos artículos. Dibujeun diagrama de entidad-relación en la tercera forma normal para los artículos, autores, periódicos y temas.15. Identifique las claves primarias y externas para el diagrama de entidad-relación creado en el problema 14.PROYECTO EN GRUPO1. Gregg Baker compró boletos para dos conciertos a través de la Web. Sus pedidos se procesaron, las ubicaciones exactasse asignaron y los boletos se enviaron por separado. Uno de los conjuntos de boletos se perdió en el correo. Cuandollamó al número de servicio no recordó la fecha ni los números de los asientos, pero la agencia pudo localizar susboletos con rapidez debido a que desnormalizó la relación. Describa el sistema de pedidos de boletos mediante unlistado de los elementos de datos que se mantienen en el formulario de pedido y el formulario de envío. ¿Quéinformación proporcionó Gregg a la agencia de boletos para recuperar la información?BIBLIOGRAFÍA SELECCIONADAAgrawal, R., A. Ailamaki, P. A. Bernstein, E. A. Brewer, M. J. Carey, S. Chaudhuri, et al. “The Claremont Report on DatabaseResearch”. Communications of the ACM, Vol. 52, Núm. 6, 2009, pp. 56-65.Avison, D. E. Information Systems Development: A Database Approach, 2ª. Edición. Londres: Blackwell Scientific, 1992.Codd, E. F. “A Relational Model of Data for Large Shared Data Banks”. Communications of the ACM, Vol. 13, Núm. 6, 1970,pp. 377-387.Deitel, H. M., P. J. Deitel y T. R. Nieto. E-Business and E-Commerce: How to Program. Upper Saddle River, NJ: Prentice Hall,2001.Gane, C. y T. Sarson. Structured Systems Analysis: Tools and Techniques. Englewood Cliffs, NJ: Prentice Hall, 1979.Gray, P. “Data Warehousing: Three Major Applications and Their Significance”. En Emerging Information Technologies, Im-proving Decision, Cooperation, and Infrastructure. Editado por K. E. Kendall, Thousand Oaks, CA: Sage Publications,1999.Hoffer, J., A. Prescott y H. Topi. Modern Database Management, 9ª. Edición. Upper Saddle River, NJ: Prentice Hall, 2009.Sanders, G. L. Data Modeling. Nueva York: International Thomson Publishing, 1995.Shin, S. K. y G. L. Sanders. “Denormalization Strategies for Data Retrieval from Data Warehouses”. Decision Support Systems,Vol. 42, Núm, 1, 2006, pp. 267-282.www.xlibros.com
CAPÍTULO 13 • DISEÑO DE BASES DE DATOS 437ContieneInstalada enNumero inventario hardware +Nombre marca +Modelo +Numero serie +Fecha compra +Costo compra +Costo reemplazo +Tamanio memoria +Capacidad disco duro +Capacidad segundo disco duro +Unidad optica +Sistema operativo +Intervalo actualizacion +Duracion garantia +Descripcion campus +Ubicacion sala +{Numero inventario software}Numero inventario software +Titulo +Nombre sistema operativo +Numero version +Editorial +Descripcion categoria software +Marca computadora +Modelo computadora +Memoria requerida +Licencia sitio +Numero de copias +Apellido paterno experto +Primer nombre experto +Telefono oficinaSoftwareComputadoraFIGURA E13.1Diagrama de entidad-relación sinnormalizar para el sistemacomputarizado. La relación demuchos a muchos se tendrá quedefinir como una entidadasociativa.E P I S O D I O 1 3CASO DE LA CPUALLEN SCHMIDT, JULIE E. KENDALL Y KENNETH E. KENDALLDe vuelta a los fundamentos de datosDespués de realizar numerosas entrevistas, prototipos, diagramas de flujo de datos, entradas en el diccionario de datos ydiagramas de UML, Anna y Chip empiezan a trabajar en el modelo de entidad-relación. “Yo seré responsable de crear lasrelaciones de las tablas de Microsoft Access”, afirma Anna. Chip se ofrece a completar un diagrama de entidad-relación.“Cuando terminemos, vamos a comparar los dos diagramas en cuanto a precisión y consistencia”, sugiere Anna, y así lohacen.La figura E13.1 muestra el diagrama de entidad-relación para el sistema de inventario de computadoras. Visible Analystllama a cada uno de los rectángulos una entidad. Cada entidad representa una tabla de base de datos de información almacenadaen el sistema, correspondiente a un almacén de datos en el diagrama de flujo de datos o a una clase de entidad en un diagramade secuencia o de clases. Cada uno de los rectángulos en forma de diamante representa una entidad asociativa que representauna relación entre las entidades de datos. Un rectángulo con un óvalo en su interior representa a una entidad asociativa que nopuede existir sin la entidad conectora. Por lo general éstos son elementos repetitivos. Microsoft Visio usa rectángulos para re-presentar tanto una entidad asociativa como una entidad atributiva.“Terminé de crear el diagrama de entidad-relación, empezando con las porciones más simples del sistema”, Chip dice aAnna. “Las primeras entidades de datos creadas son SOFTWARE y COMPUTADORA. La relación es que el software seinstala en la computadora. Después determiné la cardinalidad de la relación. Como un paquete de software se puede instalar enmuchas computadoras, esta relación es de uno a muchos. Cada computadora también puede tener varios paquetes de softwareinstalados en ella, por lo que también provee una relación de uno a muchos. Como hay una relación de uno a muchos para cadauna de las entidades de datos, la relación completa entre ellas se vuelve de muchos a muchos”.Chip continúa y dice: “Esta primera vista está lejos de ser normalizada. Observa que NUMERO INVENTARIO SOFT-WARE es un elemento repetitivo en la entidad HARDWARE. Voy a tener que crear varias entidades para cada uno de ellos”.Poco después, Chip revisa su trabajo con Anna. Se quitó el NUMERO INVENTARIO SOFTWARE y se colocó en una entidadrelacional. Consulte el diagrama de entidad-relación que se muestra en la figura E13.2. “Esto coloca a los datos en la primeraforma normal”, comenta Chip. “Además, no hay elementos que dependan sólo de una parte de la clave, por lo que los datostambién se encuentran en la segunda forma normal. Sin embargo, hay elementos que no forman parte de la entidad que se re-presenta en el diagrama y habrá que eliminarlos. Por ejemplo, da un vistazo a SISTEMA OPERATIVO y a EDIFICIO CAM-PUS. Estos elementos no son parte del hardware de computadora, pero están instalados en la computadora o la computadoraestá instalada en una sala del campus. Deben tener su propia entidad. Esto facilita el proceso de cambiar la versión de un sistemaoperativo. En vez de tener que cambiar la versión del sistema operativo en muchos de los registros de COMPUTADORA, ten-dríamos que cambiarlo sólo una vez”.Anna asiente y comenta: “Es realmente una buena valoración de la situación. Facilitará la implementación de las tablas deMicrosoft Access”.www.xlibros.com
438 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOEdificio campusComputadoraSistema operativoCodigo campus +Descripcion campusCodigo sistema operativo +Nombre sistema operativoNumero inventario hardware +Nombre marca +Modelo +Intervalo actualizacion +Duracion garantia +Codigo campustienecomputadorasdentro deestánlocalizadasentieneunproveesolucionesparaobtieneayudadeNumero empleado +Apellido paterno experto +Primer nombre experto +Telefono oficina +Direccion email +Codigo departamento +Enseña cursoNumero inventario software +Titulo +Nombre sistema operativo +Numero versión +Editorial +Codigo categoría software +Numero empleadoperteneceadescritoporse relaciona conpuede tenertienese relaciona conNumero inventario hardware +Numero inventario softwareCodigo categoria software +Descripcion categoria softwareExperto softwareSoftwareCategoria softwareHardwareSoftwareFIGURA E13.3Diagrama de entidad-relación final para el sistema computarizado.Chip continúa trabajando en el diagrama de entidad-relación. Después de unas cuantas horas exclama: “Creo que está listo.¿Podrías dar un vistazo a la versión final?”. En la figura 13.3 se muestra la versión final. Se describieron todas las entidades yrelaciones en el repositorio.Anna revisa la versión final y exclama, “¡Se ve excelente! Tuviste razón en mover SISTEMA OPERATIVO y EDIFICIOCAMPUS a sus propias entidades. Buena idea, ya que el edificio no es parte de la computadora. Además, en definitiva el EX-PERTO DE SOFTWARE no es parte de la entidad SOFTWARE. ¿Qué hay sobre CATEGORIA SOFTWARE?”.“Moví la CATEGORIA SOFTWARE a su propia entidad para ahorrar espacio en los archivos maestros cuando se constru-yan”, responde Chip. “En realidad es una tabla de códigos y facilita el proceso de cambiar la categoría sin tener que cambiartodos los registros de software. Además vamos a almacenar un pequeño código en vez de una descripción extensa en cada re-gistro de software. ¿Por qué no revisas dos veces las diversas claves en el diagrama? Cada entidad relacionada en el extremo demuchos debería tener una clave externa que coincida con la clave primaria de la entidad en el extremo de uno”.Anna examina el diagrama por un instante y comenta, “Se ve bien, en mi opinión. Tal vez debamos definir las entradas enel repositorio”.“Mira esta entrada en el repositorio”. Chip abre el diagrama de entidad-relación (figura E13.4) y hace doble clic en laentidad COMPUTERS (COMPUTADORAS) para mostrar su entrada en el repositorio. Se definieron la clave primaria (la no-tación [pk] de Microsoft Visio y Visible Analyst frente al elemento NUMERO INVENTARIO HARDWARE [HARDWAREpuede tenertieneNumero inventario hardware +Numero inventario softwareNumero inventario hardware +Nombre marca +Modelo +Numero serie +Fecha compra +Costo compra +Costo reemplazo +Tamanio memoria +Capacidad disco duro +Capacidad segundo disco duro +Unidad optica +Sistema operativo +Intervalo actualizacion +Duracion garantia +Descripcion campus +Ubicacion sala +Numero inventario software +Titulo +Nombre sistema operativo +Numero version +Editorial +Descripcion categoria software +Marca computadora +Modelo computadora +Memoria requerida +Licencia sitio +Numero de copias +Apellido paterno experto +Primer nombre experto +Telefono oficinaComputadora SoftwareHardwareSoftwareFIGURA E13.2El diagrama de entidad-relacióndel sistema computarizado enprimera forma normal.www.xlibros.com
CAPÍTULO 13 • DISEÑO DE BASES DE DATOS 439FIGURA E13.4El diagrama de entidad-relaciónnormalizado de la CPU se muestraen Microsoft Visio con ladefinición del repositorio paraSoftware.FIGURA E13.5Un diagrama de RELACIONESde Microsoft Access. Observe lossímbolos de infinito querepresentan el extremo de muchosde una relación.INVENTORY NUMBER] en el área de composición), las claves externas (FK1, FK2 y así en lo sucesivo) y varias claves alter-nas ([Ak1],[Ak2] y [Ak3]). Después de invertir tiempo en examinar el diagrama, así como las entradas en el repositorio y losinformes de análisis, tanto Anna como Chip quedan satisfechos de que las relaciones entre los datos estén representadas enforma precisa. A continuación deciden cómo diseñar la base de datos a partir de los diagramas.Primero analizan la relación HARDWARE/SOFTWARE. Como hay una relación de muchos a muchos entre estas dosentidades de datos, se puede implementar mediante el uso de tres tablas de base de datos:1. Una tabla MAESTRA DE HARDWARE (HARDWARE MASTER).2. Una tabla MAESTRA DE SOFTWARE (SOFTWARE MASTER).3. Una tabla RELACION HARDWARE/SOFTWARE (HARDWARE/SOFTWARE RELATIONSHIP), que debe contener loscampos clave de las tablas maestras HARDWARE y SOFTWARE para todo el software instalado en todas las máquinas. Tambiénpodría funcionar una clave de primaria de autosecuencia, siempre y cuando se incluyan las claves externas en la tabla.“Creo que es mi turno de trabajar en las relaciones”, dice Anna mientras saca una copia del diagrama de entidad-relación. Voya modificar las tablas de Microsoft Access de las sesiones de los prototipos”.Para empezar, Anna establece las claves primarias para cada una de las tablas. Cuando éstas se encuentran en su formafinal, crea las relaciones entre ellas. En la figura E13.5 se muestra el diagrama de relaciones de Microsoft Access. Los rectán-www.xlibros.com
440 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOgulos en el diagrama representan las tablas de la base de datos y corresponden a los diversos tipos de entidades que se encuen-tran en el diagrama de entidad-relación. Tenga en cuenta que la cardinalidad se representa mediante “1” y el símbolo de infinito.Los campos que son claves primarias se listan como el primer campo de cada rectángulo; también se muestran en negrita. Lasclaves externas se muestran unidas al otro extremo de la línea de la relación, si la clave externa es visible en el rectángulo de latabla. Las claves se arrastran de una tabla a otra para establecer una relación; aparece un cuadro de diálogo para determinar laspropiedades de la relación.EJERCICIOSE-1. Use Microsoft Visio o Visible Analyst para ver los diagramas de entidad-relación sin normalizar y en primera formanormal para el sistema computarizado. Haga doble clic en las entidades para ver la información del repositorio. (EnMicrosoft Visio y en Visible Analyst; en Microsoft Visio la entrada del repositorio está en un área en la parte inferior dela pantalla. Tal vez tenga que arrastrar el borde que separa el diagrama del repositorio hacia arriba. Haga clic en la entradaColumnas (Columns) que está en el área Categorias (Categories) del lado izquierdo del repositorio para ver los atributosde entidad). El nombre del diagrama es SISTEMA COMPUTARIZADO – SIN NORMALIZAR (COMPUTER SYS-TEM – UNNORMALIZED).E-2. Use Microsoft Visio o Visible Analyst para ver el diagrama de entidad-relación del sistema computarizado. Haga dobleclic en las entidades para ver la información del repositorio (en Microsoft Visio y en Visible Analyst). El nombre deldiagrama es COMPUTADORA (COMPUTER).E-3. Agregue la entidad DISTRIBUIDOR (VENDOR) al diagrama. El distribuidor garantiza las computadoras; la relaciónentre DISTRIBUIDOR y COMPUTADORA es que un VENDEDOR puede garantizar muchas COMPUTADORA(s).Agregue las claves primarias. Microsoft Visio creará de manera automática las claves externas. En Visible Analyst, se-leccione Sincronización de claves (Key Synchronization) del menú Repositorio (Repository).E-4 Agregue la entidad MANTENIMIENTO (MAINTENANCE) al diagrama. Las reparaciones de mantenimiento se reali-zan en las computadoras; la relación entre MANTENIMIENTO y COMPUTADORA(s) es tal que una COMPUTA-DORA puede tener muchos registros de MANTENIMIENTO. Use el repositorio para definir NUMERO PEDIDOMANTENIMIENTO (MAINTENANCE ORDER NUMBER). Establezca este atributo como clave primaria para la en-tidad MANTENIMIENTO y genere la clave externa.E-5. Describa la entidad CATEGORIA SOFTWARE (SOFTWARE CATEGORY) en el repositorio. Incluya los elementos quese encuentran en el diagrama de entidad-relación debajo de CATEGORIA SOFTWARE en el área Composición (Com-position).E-6. Describa la entidad MANTENIMIENTO (MAINTENANCE) en el repositorio. Los elementos son los siguientes:a. NUMERO ORDEN MANTENIMIENTO (MAINTENANCE ORDER NUMBER)b. NUMERO INVENTARIO HARDWARE (HARDWARE INVENTORY NUMBER)c. FECHA MANTENIMIENTO (MAINTENANCE DATE).d. TIPO DE MANTENIMIENTO (TYPE OF MAINTENANCE).e. COSTO DE MANTENIMIENTO (COST OF MAINTENANCE).f. MANTENIMIENTO CUBIERTO POR GARANTIA (MAINTENANCE COVERED BY WARRANTY).E-7. Describa la entidad DISTRIBUIDOR (VENDOR). Los elementos son los siguientes:a. NUMERO DISTRIBUIDOR (VENDOR NUMBER).b. NOMBRE DISTRIBUIDOR (VENDOR NAME).c. CALLE (STREET).d. CIUDAD (CITY).e. ESTADO (STATE).f. CODIGO POSTAL (ZIP CODE).g. NUMERO TELEFONICO (TELEPHONE NUMBER).h. FECHA ENVIO ULTIMO PEDIDO (DATE LAST ORDER SENT).i. MONTO TOTAL COMPRA DISTRIBUIDOR (TOTAL AMOUNT PURCHASED FROM VENDOR).j. NUMERO TOTAL DE PEDIDOS ENVIADOS AL DISTRIBUIDOR (TOTAL NUMBER OF ORDERS SENT TOVENDOR).E-8. Cada computadora puede tener más de un sistema operativo y cada sistema operativo puede estar instalado en más deuna computadora. Agregue una entidad asociativa llamada SISTEMA OPERATIVO COMPUTADORA (COMPUTEROPERATING SYSTEM) entre COMPUTADORA (COMPUTER) y SISTEMA OPERATIVO (OPERATING SYS-TEM). Incluya las claves primarias y externas en el repositorio, ya sea en Microsoft Visio o en Visible Analyst.E-9. Explique en un párrafo la relación entre una clave externa y una clave primaria, y por qué es necesario tenerlas en enti-dades separadas cuando hay una relación entre las entidades.Los ejercicios en los que se antepone un icono www indican material de valor agregado disponible en el sitio Web www.pearsonhighered.com/kendall. Los estudiantes pueden descargar un archivo de ejemplo de Microsoft Visio, Visible Analyst, Microsoft Project o Microsoft Access quepueden usar para completar los ejercicios.www.xlibros.com
441C A P Í T U L O 1 4Interacciónhumano-computadoraOBJETIVOS DE APRENDIZAJEAl completar este capítulo usted podrá:1. Comprender la interacción humano-computadora (HCI).2. Diseñar gran variedad de interfaces de usuario.3. Diseñar un diálogo efectivo para la HCI.4. Comprender la importancia de la retroalimentación del usuario.5. Asumir las implicaciones de la HCI para diseñar sitios Web de comercio electrónico.6. Formular consultas que permitan a los usuarios buscar en la Web.Conforme avanza en el libro, usted va cobrando mayor conciencia sobre lainteracción humano-computadora (HCI) y la importancia que tiene para llevara cabo sus tareas como analista de sistemas. En este punto necesita dominarlos conceptos relacionados con la HCI, además de volverse un experto en laevaluación de los requerimientos humanos de información para incorporarsus hallazgos a sus diseños. La Unión Europea (UE) y Estados Unidos han ideado lineamientosespecíficos de usabilidad; éstos prescriben que los sitios Web y servicios electrónicos sean accesi-bles tanto para las personas con capacidades normales como para las discapacitadas.En este capítulo lo pondremos al tanto sobre los detalles relacionados con la HCI y la formade trabajar con los usuarios. También le proporcionaremos cierta experiencia en la aplicación delos conceptos de HCI que usted ha estado aprendiendo para ayudarlo con el diseño de interfaceshumano-computadora, retroalimentación, sitios Web de comercio electrónico y consultas Web.COMPRENSIÓN DE LA INTERACCIÓN HUMANO-COMPUTADORADiseñar para HCI implica “asegurar la funcionalidad y usabilidad del sistema proporcionando unsoporte efectivo a las interacciones con el usuario y posibilitándole una experiencia placentera ”.Además, “el objetivo primordial es alcanzar efectividad y eficiencia para el usuario tanto empresa-rial como individual. Para cumplir con estas metas, los gerentes y desarrolladores necesitan cono-cer a fondo la interacción entre los usuarios, tareas, contextos de tareas, tecnología de información(TI) y los entornos en los que se utilizan los sistemas” (Carey et al., 2004, p. 358).Mediante la consideración de las interfaces a la luz de las cuestiones de HCI, y gracias anuevas maneras de aplicar los conceptos de diseño estándar a las computadoras bajo un enfoqueHCI, podemos asegurar que nuestros sistemas se centren en el usuario, de manera que permitansatisfacer tanto las necesidades de éstos como las de la organización. El fundamento de la HCIconsiste en conocer la interacción entre los usuarios, las tareas, los contextos de las tareas, la TI ylos entornos donde se utilizan los sistemas. En el análisis y diseño de sistemas, la principal tácticade la HCI consiste en, primeramente, obtener retroalimentación constante de los usuarios sobre susexperiencias con los diseños para los que se crearon prototipos (pantallas, formularios, interfaces,www.xlibros.com
442 PARTE IV • LOS FUNDAMENTOS DEL DISEÑON a t u r a l e z ad e lt r abajoEntornoEspaciodetrabajoHumanoComputadoraTareaAjusteDesempeño ybienestarFIGURA 14.1El “ajuste” entre humano,computadora y tarea afecta aldesempeño y al bienestar.etcétera), para después refinar el diseño con base en los cambios sugeridos y probarlos de nuevo con los usua-rios, hasta que el diseño sea aceptable y el analista lo considere “congele”.Cómo el ajuste afecta al desempeño y al bienestarComenzaremos nuestra exploración de la HCI con algunas definiciones de uso común en el campo.AJUSTE Un buen ajuste entre los elementos de HCI del humano, la computadora y la tarea a desarrollar conducenal desempeño y bienestar, como se muestra en la figura 14.1. Así como es importante que los zapatos nuevos seajusten cómodamente al contorno de su pie, que den sustento a la actividad a realizar (como correr) y que esténfabricados de un material (como la piel) duradero y efectivo en costo, también es importante un ajuste apropiadoentre el usuario, la computadora y la tarea.Los analistas desean el mejor ajuste para su diseño; aspiran a emplear al personal, de la mejor manera posi-ble, para diseñar una tarea computarizada que cumpla con un objetivo de la organización. Un mejor ajuste pro-duce mejor desempeño y mayor bienestar general para el humano involucrado con el sistema.Por fortuna, la capacidad humana de aprender mejores formas para trabajar también influye en elajuste. Nunca trataríamos de correr un maratón con unos zapatos nuevos sin antes “domarlos”. De igualforma podemos mejorar el ajuste a un nuevo sistema capacitando antes a los usuarios para que aprendan sustareas y conozcan sus computadoras a fondo. La capacitación sigue siendo una forma importante de mejorarel ajuste.TAREA En los capítulos anteriores aprendió muchos métodos que le ayudan a comprender, documentar y describirgráficamente las tareas que las personas desempeñan actualmente en la organización. También aprendió sobre losmétodos que le pueden ayudar a diseñar nuevas tareas para ayudar a las personas a cumplir sus objetivos conlos nuevos sistemas que usted va a crear. Como recordará, las tareas pueden ser estructuradas y rutinarias, opueden estar mal definidas y sin una estructura aparente. Las tareas complejas que requieren de la interacciónwww.xlibros.com
CAPÍTULO 14 • INTERACCIÓN HUMANO-COMPUTADORA 443entre humano, sistema y tarea se respaldan mediante sistemas Web y de comercio electrónico, sistemas ERP ysistemas inalámbricos dentro y fuera de la organización.DESEMPEÑO La definición de desempeño en el contexto de la HCI también es clave: se refiere a una combinaciónde la eficiencia involucrada al desempeñar una tarea y la calidad del trabajo que ésta produce. Por ejemplo, silos analistas utilizan software de alto nivel o una herramienta CASE para crear diagramas de flujo de datos en losque son muy competentes, podríamos predecir que la calidad de los diagramas de flujo de datos producidos seráalta. El desempeño también es eficiente, ya que los analistas utilizan una herramienta automatizada con la queestán familiarizados: pueden trabajar con rapidez y obtener buenos resultados. La tarea se ajusta al objetivo,que es crear diagramas de flujo de datos de alta calidad para documentar un sistema. La eficiencia de producirdichos diagramas con una herramienta CASE —que se puede usar después para almacenar, recuperar, comunicary modificar los diagramas de UML—, es excelente si se le compara con alternativas como usar una herramientade dibujo no relacionada con un diccionario, o con la opción de dibujar los diagramas a mano, dado que ninguna deellas ofrece las ventajas mencionadas.BIENESTAR En este punto podemos presentar el concepto de bienestar: la preocupación por la comodidad,seguridad y salud de un humano en general; por su buen estado físico y psicológico. ¿Acaso usar una herramientaCASE para producir diagramas de UML o DFD en una computadora sirve para el bienestar del analista? Sí, yaque la tarea se ajusta bien al analista, al software, al objetivo y a la computadora, y se parte de que los analistastrabajan en un entorno en el que están físicamente cómodos, reciben estímulo psicológico para ser creativos ypueden ser productivos, además de que los colegas y clientes valoran su trabajo, y la organización que los empleales paga correctamente.También importan las actitudes psicológicas (el componente afectivo). Es posible medir cómo se sienten losusuarios con respecto a sí mismos, sus identidades, su vida laboral y desempeño mediante una evaluación de ac-titudes. Como analista que asume una perspectiva de HCI, usted se debe concentrar en averiguar cómo influyenlas actitudes de los humanos en lo que sienten sobre la tecnología y sus tareas, además de descubrir si sus actitu-des dificultan o mejoran su experiencia.El modelo de aceptación de la tecnología y su relación con la actitudEl modelo de aceptación de la tecnología (TAM) propuesto por Davis en 1989, que posteriormente refinó ymejoró junto con sus colaboradores, es en esencia una forma en que los analistas pueden organizar lo quepiensan sobre el hecho de que los usuarios acepten y utilicen la tecnología de la información. Se puede utili-zar para dar forma a la capacitación que se imparte después del desarrollo del sistema, y durante las primerasetapas del proceso de desarrollo para recopilar las reacciones de los usuarios con respecto a los prototipos.Modificar los sistemas en las primeras etapas del proceso de desarrollo mejora sus probabilidades de adop-ción y uso.Existen muchos componentes teóricos y mucha investigación al respecto de las complejidades del TAM. Entérminos prácticos, debe estar consciente de que hay un extenso organismo de investigación sobre la aceptación yel uso de la tecnología en el campo de los sistemas de información, y que TAM es uno de los temas más popula-res. El poder del TAM proviene de examinar la utilidad percibida del sistema para incrementar el desempeño deuno mismo en el trabajo, y de la creencia sobre qué tan fácil será el sistema de usar cuando un usuario se sientea realizar una tarea. Esto provee dos claves: utilidad percibida y facilidad de uso percibida. Ambas se puedenusar para comprender cómo pretenden los usuarios interactuar con un sistema propuesto. Algunos investigadoresagregan al modelo una dimensión de actitud explícita que les ayuda a pensar más específicamente sobre los es-tados psicológicos que influirán para que los usuarios acepten o rechacen el uso de los sistemas de informaciónque diseñan.Las actitudes hacia las computadoras incluyen la satisfacción del usuario con la HCI, así como la satis-facción de los usuarios con el sistema en general; comúnmente, éstas se establecen a través de encuestas es-peciales de satisfacción del usuario y a menudo se utilizan después de la implementación para estimar el éxitoo fracaso en general de un proyecto de sistemas. Si intenta caracterizar las actitudes hacia las computadoras,tal vez le sorprenda todas las posibles respuestas humanas expresadas. La mayor parte de la investigación so-bre la HCI analiza las actitudes de usuario, incluyendo satisfacción, ansiedad, placer y alegría al acceder a latecnología.El modelo de aceptación de la tecnología también recalca la importancia de que los usuarios encuentren útilal sistema y por ello se sientan motivados a usarlo; dado que ésta es una de las preocupaciones fundamentales dela HCI, es posible determinar si la tecnología de la información es útil averiguando si el sistema provee soportepara las tareas individuales de un miembro de la organización. También podemos medir si hay tareas importantesque el usuario de un nuevo sistema no podía realizar antes de su implementación. Nuestras mediciones tambiénpueden determinar si el sistema extiende las capacidades de un usuario (por ejemplo, su capacidad para realizarun análisis de nivel superior con rapidez o una traducción al instante de un informe financiero a otro idioma, conwww.xlibros.com
444 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOtodo y conversiones de moneda). Parte del criterio de utilidad en la HCI se puede medir también al establecersi los usuarios encuentran gratificante usar el sistema, para lo cual podemos realizar entrevistas y observacionesdespués de la implementación.USABILIDADLa usabilidad es un término que se define de manera distinta dependiendo de la rama de la ciencia que es-temos investigando. En el caso que nos ocupa, consideraremos a la usabilidad como un medio con que losdiseñadores cuentan para evaluar, tan minuciosamente como sea posible, sus sistemas e interfaces en términosde las preocupaciones de la HCI. Los estudios sobre la usabilidad (de acuerdo con www.useit.com) se enfocanen averiguar lo que funciona y lo que no funciona en el mundo. La ISO ha creado estándares de usabilidadque podemos explorar en www.usabilitynet.org/tools/r_international.htm. Estos estándares abarcan el uso delproducto (efectividad, eficiencia y satisfacción en un contexto de uso específico), la interfaz e interaccióndel usuario, el proceso utilizado para desarrollar el producto y la capacidad de una organización de aplicar undiseño centrado en el usuario.Nielsen y Mack (1994) y Nielsen, Molich, Snyder y Farrell (2001) publicaron heurísticas de uso (o reglasprácticas) con base en los miles de pruebas de usabilidad de las interfaces y, más tarde, en las pruebas de lossitios Web de comercio electrónico. Aquí se incluye la visibilidad del estado del sistema, la coincidencia entreel sistema y el mundo real, el control y la libertad del usuario, la consistencia y los estándares, la prevención deerrores, la posibilidad de reconectar en vez de recordar, la flexibilidad y la eficiencia de uso, el diseño estético yminimalista, la ayuda que reconocen los usuarios, el diagnóstico y la recuperación de los errores, además de laayuda y la documentación. Probablemente reconozca algunas de ellas, que vimos en los capítulos sobre el diseñode la entrada y la salida.La figura 14.2 muestra una encuesta de usabilidad que se administra directamente a los usuarios que haninteractuado personalmente con un prototipo. Pregunta abiertamente sobre ciertas dimensiones ergonómicas yde usabilidad que son importantes. Otra metodología es la de escribir escenarios de casos de uso para el sistema,que son útiles para examinar las cuestiones sobre la usabilidad.Diseño para los estilos cognoscitivos de usuarios individualesUn punto importante a considerar es que los datos, en especial los que se utilizan para la toma de decisiones, sepongan a la disposición de diferentes maneras con el fin de que los usuarios con distintas habilidades cognos-citivas puedan sacar provecho de ellos. Tal vez algunos usuarios prefieran examinar tablas y tomar decisiones,algunos prefieran gráficas y otros deseen leer texto descriptivo.También es concebible que la misma persona desee distintos tipos de presentaciones en distintos momentos.Por ejemplo, suponga que un gerente desea comparar el inventario en distintas tiendas de una región. Una gráficapodría presentar los datos con mucha efectividad: una de columnas puede usar colores para mostrar cuando unatienda está cerca de su nivel de reabastecimiento y también puede mostrar la cantidad relativa de existencia alpermitir que el usuario compare visual y directamente la altura de las barras.Ahora suponga que la misma persona encargada de tomar decisiones desea información sobre una tiendaespecífica en cierto mes. Podríamos establecer una descripción gráfica para mostrar las tiendas con el inventariode mayor a menor, mes por mes. Tal vez el usuario prefiera regresar a la tabla que muestra una lista de las tiendaspor orden alfabético, con los meses en orden cronológico. Como puede ver, la misma persona tal vez quiera verlos mismos datos en formas muy distintas.TABLAS DINÁMICAS Las tablas dinámicas permiten a los usuarios ordenar datos en una tabla de la maneraque deseen. En la figura 14.3 se muestra un ejemplo de una tabla dinámica que se creó en Microsoft Excel. Elusuario debería tomar un elemento del cuadro desplegable llamado “Listas de campos de tabla dinámica (PivotTable Field List)”, como Producto (Product) por ejemplo, arrastrarlo a la plantilla de la tabla y soltarlo en unade las áreas en blanco. En este ejemplo el usuario arrastra y suelta Producto en el área a la izquierda titulada“Coloque campos de fila aquí (Drop Column Fields Here)”. Después suelta Ventas (Sales) en el área más grandeque dice “Coloque datos aquí (Drop Row Fields Here)”.Por último, el usuario toma el elemento Trimestre (Quarter) y lo suelta en el área llamada “Coloque cam-pos de columna aquí (Drop Column Fields Here)”. El resultado es una tabla que muestra cada uno de los pro-ductos en orden alfabético, junto con sus ventas para cada uno de los cuatro trimestres de los que tenemos datos,seguidos del gran total para todo el año. Esta tabla se muestra en la figura 14.4.Desde luego que el usuario podría haber hecho lo opuesto; es decir, arrastrar el elemento Trimestre a lacolumna de la izquierda y Producto al área que dice “Coloque campos de columna aquí”. Sin embargo, esa ope-ración hubiera producido una tabla con muchas columnas (una para cada producto) y sólo cinco filas (una paracada trimestre, más una fila para el total). La tabla resultante hubiera sido difícil de leer.www.xlibros.com
CAPÍTULO 14 • INTERACCIÓN HUMANO-COMPUTADORA 445Llene esta encuesta después de que haya interactuado con el prototipo. Circule un número a medida que responde acada pregunta. Entregue su encuesta al analista cuando haya terminado. Gracias por su valiosa retroalimentación.1. ¿Qué tan bien pudo leer la pantalla o formulario?2. Si se utilizó audio, ¿pudo usted escucharlo?3. ¿Consideró el sistema seguro de usar?1112224445553331111122222444445555533333111112222244444555553333311111112222222444444455555553333333Prototipo que se evalúa ________________ Versión ___________________ Fecha ____/____/______Encuesta de usabilidadFactores de la interacción humano-computadoraCuestiones físicas/de seguridad4. le ayuda a reducir los errores?5. le permite recuperarse de un error si comete uno?6. le ayuda para usarlo con facilidad?7. le ayuda a recordar cómo usarlo?8. le facilita aprender a usarlo?Cuestiones de usabilidad ¿En qué grado el sistema:9. ¿Era el sistema atractivo?10. ¿Era agradable el sistema (quería usarlo)?11. ¿Confía en él como sistema?12. ¿Fue satisfactorio su uso?13. ¿Fue agradable su uso?14. ¿Era el sistema entretenido?15. ¿Era el sistema divertido de usar?Atributos de satisfacción y entretenimiento16. respaldó su tarea o tareas individuales?17. le ayudó a extender sus capacidades?18. fue gratificante en cuanto a su uso?19. le permitió realizar tareas que el otro sistemano le permitía?Atributos de utilidad ¿En qué grado el sistema:MuymalMuybienPromedioFIGURA 14.2Podemos usar un formulario para encuestar a los usuarios de prototipos sobrelos factores clave ergonómicos y de usabilidad (categorías basadas en Zhang,Carey, Te’eni y Tremaine, 2005, tabla de cuestiones de la HCI, p. 522).Es posible obtener muchas tablas con sólo reordenar estas cuatro variables. Si el usuario arrastrara la va-riable Categoría (Category) al área que dice “Coloque campos de fila aquí (Drop Column Fields Here)”, lascolumnas habrían sido categorías de productos en vez de los trimestres, y la tabla resultante hubiera mostradocon claridad cuáles elementos pertenecen a cada categoría, además de producir los subtotales de cada una. Si searrastrara Categoría al área de la parte superior de la plantilla que dice “Coloque campos de página aquí (DropPage Fields Here)”, entonces cada categoría tendría su propia tabla en una página separada.Las tablas dinámicas son útiles debido a que conceden a los usuarios un mayor control sobre las distintasformas en que pueden ver los datos dentro de una tabla. En la siguiente sección examinaremos este mismo con-cepto para las gráficas.www.xlibros.com
446 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOFIGURA 14.3Una plantilla de tabla dinámicapuede facilitar a los usuarios latarea de ver la información endistintas formas.FIGURA 14.4Después de que el usuario arrastralos elementos Producto (Product),Trimestre (Quarter) y Ventas(Sales) a la plantilla, la tabla tieneesta apariencia.ANÁLISIS VISUAL DE BASES DE DATOS Se ha innovado en el despliegue visual de datos durante muchotiempo, incluso desde el siglo dieciocho. Las barreras contra el uso extendido de pantallas incluían la falta deimaginación, la incapacidad de dibujar gráficas y diagramas de manera efectiva en costo y la falta de apreciaciónde tales pantallas. El consumidor de información debe ser capaz de interpretar la información en el diagrama o, delo contrario, éste aportará muy poco valor.Hay software disponible para permitir al usuario examinar en forma visual una base de datos u hoja decálculo. El producto de Tableau Software es un ejemplo (www.tableausoftware.com). Mediante el uso de unametodología similar a las tablas dinámicas que vimos en Microsoft Excel, Tableau permite al usuario arrastrar ysoltar variables en una fila o columna para que aparezcan en una gráfica. En la figura 14.5, los elementos Región(Region) y Dia (Weekday) se designaron como columnas y SUMA (Total de ventas) [SALES(Sales Total)] sewww.xlibros.com
CAPÍTULO 14 • INTERACCIÓN HUMANO-COMPUTADORA 447designó como fila. Después se graficó cada Categoría de producto (Product Category) [con “muebles (furni-ture)” en azul, “artículos de oficina (office supplies)” en naranja y “tecnología (technology)” en verde].La gráfica demuestra que las ventas de tecnología fueron mayores que en las demás categorías, pero en espe-cial, las ventas de tecnología fueron mucho mayores que las ventas de muebles o artículos de oficina en la regiónEste (East). El usuario pudo ver esto con facilidad debido a que la Región (Region) se destacó como uno de losseparadores al arrastrar este elemento al área como una columna.Tableau es un paquete de software bien diseñado, ya que va mucho más allá que otras aplicaciones en cuantoa extender las capacidades del usuario para que realice sus tareas por medio de las técnicas de tablas dinámicas.Los desarrolladores también descubrieron que los usuarios podrían querer agrupar los datos en lo que conside-ren un grupo significativo. Así los usuarios pueden continuar el análisis al examinar uno de los grupos con másdetalle.La figura 14.6 examina la SUMA (Ganancia bruta) [SUM(Gross Profit)] de cada Categoría de productode nuestro ejemplo. Esta gráfica usa colores para indicar una ganancia (verde) o una pérdida (rojo). De hecho, laintensidad del color indica la cantidad de ganancia o pérdida.FIGURA 14.5Esta tabla, que muestra las ventasdiarias por categoría y por región,se produjo mediante el uso deTableau.Fuente: Cortesía dewww.tableausoftware.com.FIGURA 14.6Los productos que generanpérdidas se resaltan en color rojobrillante en este diagrama dedispersión, creado mediante el usode Tableau.Fuente: Cortesía dewww.tableausoftware.com.www.xlibros.com
448 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOFIGURA 14.7Cuando se pueden mostrardistintos gráficas o tablas en lamisma página, ésta se asemeja aun tablero de control.Fuente: Cortesía dewww.tableausoftware.com.Podemos usar esta gráfica para explorar la situación con más detalle si seleccionamos los tres grupos de círcu-los de color rojo brillante, los aislamos y después vemos los datos para esas observaciones. Los usuarios puedenexaminar gráficas o simplemente ver las observaciones en una tabla. Una vez más, tienen el control sobre laforma en que se presenta la información y por ende controlan su tarea para el mejor ajuste cognoscitivo.En la figura 14.7 se presenta otro ejemplo de Tableau, donde se muestra que este software también puedecrear un tablero de control (vimos el concepto en el capítulo 11). Aquí se muestran una tabla, un diagrama dedispersión y una gráfica de columnas en la misma página. Las herramientas de análisis visual de este tipo brin-dan apoyo al pensamiento visual y extienden las capacidades cognoscitivas del usuario para ello. Una pantallavisual apropiada incrementará la probabilidad de tomar una decisión apropiada.Consideraciones físicas en el diseño de la HCIEn los capítulos 11, 12 y 13 aprendió los fundamentos para el sólido diseño de pantallas, formularios, sitiosWeb y bases de datos. Se incluyó el uso especial de las fuentes, el color y el diseño de la distribución paracomunicarse con los usuarios y ayudarlos a manejar correctamente la entrada y salida. Para examinar lasrazones subyacentes a la mayor parte del diseño que aprendió, es conveniente analizar las capacidades y limi-taciones sensoriales humanas que deberán dar forma a nuestro diseño. De acuerdo con la filosofía de la HCI,un analista debe ser capaz de compensar, solucionar o reemplazar los sentidos humanos hasta un cierto gradovariable.VISIÓN En su esfuerzo por convertirse en analista de sistemas, se está empezando a acostumbrar a diseñarpantallas e informes para las personas con discapacidad visual. El uso de color, fuentes, gráficas, software ypresentaciones de PowerPoint para las pantallas e informes impresos como entrada y salida se explicó con detalleen los capítulos 11 y 12. Sin embargo, desde la perspectiva de la HCI, también es conveniente pensar en términosde las limitaciones en la visión humana. Factores tales como la distancia entre la pantalla y la persona que realizauna tarea, el ángulo de la pantalla en relación con la persona que la está viendo, el tamaño y la uniformidad delos caracteres, el brillo, contraste, balance y resplandor de la pantalla, además del hecho de si está parpadeando ofija son factores que se pueden diseñar en base a los estándares establecidos por medio de ISO y otras entidadesnacionales e internacionales.OÍDO Los humanos también tienen límites en cuanto a la cantidad de estrés que pueden soportar. Las ruidosasimpresoras láser, las conversaciones telefónicas y las trituradoras de papel pueden provocar una sobrecarga en eloído humano. Los trabajadores de oficina pueden usar audífonos supresores de ruido o conseguir un reproductorde música personal como el iPod, pero estas soluciones pueden tener el efecto de aislar a una persona del entorno dela organización, e incluso pueden disminuir su capacidad de realizar la tarea en cuestión. Como analista, ustedtendrá que considerar el ruido al diseñar sistemas de oficina.TACTO Al usar una perspectiva de HCI para evaluar la utilidad de los teclados y demás dispositivos de entrada,podemos clasificar el ajuste humano-computadora así como las dimensiones que examinan el ajuste humano-www.xlibros.com
CAPÍTULO 14 • INTERACCIÓN HUMANO-COMPUTADORA 449computadora-tarea. Los teclados se diseñaron en forma ergonómica para proveer la retroalimentación correctapara la persona que introduce datos. Con base en la firmeza de la tecla bajo su dedo, los usuarios saben quese efectuó la pulsación de la misma. Aunque los teclados se pueden silenciar, a menudo se diseñan con unclic de retroalimentación. Los teclados también incluyen marcas en relieve en lo que se denomina teclas base,comúnmente la f y la j, las cuales orientan a los usuarios para que sepan la posición de sus dedos en el teclado demanera que puedan ver a la pantalla o escribir información de una página impresa en su escritorio sin tener quemirar continuamente el teclado.Aunque el teclado QWERTY que utilizamos comúnmente con las computadoras en la actualidad sediseñó para reducir la velocidad de los mecanógrafos, de manera que no se atoraran las teclas de las pri-meras máquinas de escribir mecánicas, esta distribución del teclado ha demostrado ser una forma bastanteefectiva de introducir datos. De hecho, como los usuarios se desempeñan tan bien con esta familiar interfaz,es difícil conducir experimentos para comparar la eficiencia de los teclados QWERTY con otros tecladosinnovadores.Diseñar para la introducción de datos mediante teclados numéricos también constituye una oportunidad dedecisión para los diseñadores. Observe los números en su teléfono celular, que están ordenados en forma distintaa los números en un teclado numérico o calculadora. Es probable que su teléfono tenga los números 1, 2 y 3 en lafila superior. Si da un vistazo a la distribución de una calculadora o un teclado numérico verá los números 7, 8 y 9en la fila superior. La investigación ahora señala la superioridad de la distribución de la calculadora cuando elusuario introduce muchos datos. Sin embargo, se supone que la distribución de los dígitos del teléfono es mejorpara localizar un número. Como diseñador, usted tiene que examinar de manera constante el ajuste entre el hu-mano, la computadora y las tareas establecidas por la organización.Consideración de las limitaciones, discapacidades y diseño de los humanosTodos los humanos tienen limitaciones en sus capacidades físicas. Algunas se pueden ver de inmediato, otras no.Al diseñar desde una perspectiva de HCI, usted empieza a descubrir que las limitaciones se describen con fre-cuencia en términos de discapacidades. La aplicación de la HCI para apoyar y mejorar las capacidades físicas delos humanos es una de las áreas de aplicación más prometedoras. Los grandes avances en ingeniería biomédicaimplican que hay investigación encaminada a apoyar a personas con ciertos grados de discapacidad visual o au-ditiva, y a las personas con movilidad limitada.También hay mejoras en los soportes técnicos disponibles para quienes enfrentan dificultades en el proce-samiento cognoscitivo, incluyendo a personas que sufren autismo, dislexia y trastorno de déficit de atención.Como analista de sistemas, usted estará sujeto a las provisiones legales del país en el que trabaje. Por ejemplo,si está diseñando lugares de trabajo en los Estados Unidos, tal vez sea conveniente que revise las obligacionesde un patrón según la Ley de estadounidenses con discapacidades (ADA) en www.eeoc.gov/types/ada.html. Ahíencontrará definiciones de quiénes se consideran discapacitados, la cual declara en parte que “Un individuo conuna discapacidad es una persona que tiene un impedimento físico o mental que limita en forma substancial unao más actividades principales de vida, tiene un registro de dicho impedimento o se considera que tiene dicho im-pedimento”.Un patrón en los Estados Unidos tiene la obligación de hacer los ajustes necesarios para emplear a unapersona discapacitada, lo cual incluye “Hacer que las instalaciones existentes que utilizan los empleados seanfácilmente accesibles y utilizables para las personas con discapacidades; reestructurar empleos, modificar loshorarios de trabajo, la reasignación a un puesto vacante; adquirir o modificar equipo o dispositivos, ajustar o mo-dificar exámenes, material de capacitación o pólizas, y proveer lectores o intérpretes calificados”.Un candidato o empleado calificado es un individuo que, “con o sin los ajustes razonables puede llevar acabo las funciones esenciales del empleo en cuestión”. Un patrón tiene la obligación de hacer los ajustes nece-sarios en relación con la discapacidad conocida de un candidato o empleado calificado, siempre y cuando estono imponga un costo injustificado en la operación de la empresa. Costo injustificado se define como “una acciónque requiere una dificultad o gasto significativo en relación con factores tales como el tamaño del patrón, los re-cursos financieros, la naturaleza y la estructura de su operación. Un patrón no tiene que reducir la calidad o losestándares de producción para hacer dicho ajuste”.Una de las mejores formas de asegurar que se haga el mayor grado de ajuste posible es empezar a diseñardesde una perspectiva de HCI. De esa forma, su principal preocupación siempre será la de asistir a un usuarioen la realización de su tarea, establecida por la organización, mediante el uso de la tecnología. Cuando son ne-cesarios los ajustes para personas discapacitadas, hay muchas fuentes qué examinar y muchos dispositivos deasistencia qué considerar.Para las personas con algún grado de discapacidad visual, hay teclados braille además de software especialde voz que lee páginas Web y otros documentos en voz alta. También hay lupas de pantalla que se ajustan parapoder ampliar toda la pantalla completa.www.xlibros.com
450 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOPara el caso de las personas que carecen de cierta sensibilidad al color (a lo que se le conoce erróneamentecomo daltonismo), puede probar los colores que selecciona para las pantallas o formularios y asegurarse de quese puedan diferenciar con facilidad unos de otros. Por ejemplo, hay problemas específicos que ocurren al tratarde diferenciar el rojo y el verde. Diseñe siempre la pantalla o formulario con pistas alternativas, como iconos,texto escrito o pistas de audio que refuercen el contenido. Por ejemplo, si al hacer clic en un hipervínculo éstecambia a color azul para indicar que lo siguieron, también puede agregar otro icono a la pantalla para indicar quelo siguieron o crear una lista en una barra lateral separada que muestre los sitios Web que se han visitado. Estasson mejores alternativas que depender únicamente del color para transmitir el mensaje.Para los usuarios que experimentan discapacidad auditiva, puede asegurarse de que los documentos y panta-llas que diseñe incluyan el acceso a las versiones escritas del material de audio. La alternativa sería diseñar tareasdonde sea posible usar audífonos satisfactoriamente.Si va a diseñar tareas de cómputo para los que tienen una movilidad limitada, puede pensar en usar la en-trada de voz en vez del teclado. Además, los nuevos avances en la ingeniería biomédica permiten a los usuarioscon discapacidad móvil desplazar el cursor en la pantalla respirando a través de un tubo; también pueden dirigirel cursor al punto deseado en la pantalla, para lo cual ven hacia ese punto o incluso, en ciertas interfaces muyespecializadas, sólo tienen que pensar hacia dónde se debería desplazar el cursor.Implementación de las buenas prácticas de la HCILo ideal es integrar a un especialista sobre usabilidad al equipo de desarrollo de sistemas. Sin embargo, mu-chos grupos de sistemas son bastante pequeños y no hay muchos profesionales disponibles involucrados enO P O R T U N I D A D D E C O N S U L T O R Í A 1 4 . 1El espíritu escolar viene en varias tallasMatt Scott administra el departamento de ropa de estudiantes yex alumnos para una extensa librería en Saratoga Springs.“Nuestras ventas de ropa dependen no sólo de que pierden oganen nuestros equipos deportivos, sino también del bienestar engeneral de nuestros estudiantes y ex alumnos. Si están orgullosos desu universidad y desean mostrar su espíritu escolar comprarán todolo que haya en nuestros estantes”, exclama Matt. “Pero no hay quesubestimar el factor clima”, agrega. “Si éste se vuelve frío en octu-bre, aumentará de manera repentina el número de personas quecompran suéteres cálidos, jerseys y guantes”.“Nuestra tienda atiende a las tres principales universidades ennuestra área”. Matt continúa: “En primer lugar, está Hyde Park, a laque llamamos ‘escuela de fútbol’. Tienen aproximadamente 17,000estudiantes y mucha demanda de ropa de marca de la escuela, enespecial en otoño. Y luego tenemos, desde luego, a la Pierce Uni-versity. Los de Pierce creen que forman parte de la Ivy League, porlo que a sus estudiantes les gusta comprar camisetas de cuello re-dondo y tipo Lacrosse. Tienen aproximadamente 7,500 estudiantes.También está St. David, con cerca de 3,000 estudiantes. Ellos estándedicados a su equipo de básquetbol. Realmente tienen fe en ellos.Podrá ver cómo aumentan las ventas en el segundo semestre, enespecial durante la ‘locura de marzo’”.El Sr. Scott continúa y admite: “Pensé en preguntar a los estu-diantes qué vender, pero una encuesta por correo electrónico quedafuera de cuestión. Recibo mucho spam, por lo que la mayor partedel tiempo no me molesto en usar el correo electrónico. Por desgra-cia, el plazo de entrega para obtener la ropa deportiva de marcaoficial en la tienda es muy largo y existe el riesgo de quedarnos sinexistencias. Pero trataremos de que esto nunca pase”.Le han pedido a usted que diseñe un conjunto de tablas ygráficas que ayuden a analizar las ventas de la ropa de la escuelade Matt Scott. Empiece con una lista de aproximadamente 20 ar-tículos de ropa con marca de la escuela para fanáticos hombres ymujeres, incluyendo artículos como sudaderas con capucha, cami-setas, gorras de béisbol, bandas para la cabeza, shorts para correr,etcétera. Muchos de estos artículos incluyen extravagantes diseñosadornados que describen a sus mascotas en poses amenazadoras oatractivas. Hyde Park tiene sus cobradores dorados; Pierce a sumuy querida ave, Puffins; y St. David’s anima a su equipo con susdragones.Coloque los elementos en categorías. Después piense sobre laapariencia que deberían tener los datos. ¿Tiene sentido para Mattver los datos por semana, por mes o por semestre? ¿Le será conve-niente revisar los datos con cinco años de antigüedad para ver sihubo alguna tendencia? Establezca las tablas que identifican lasfilas y las columnas, junto con el contenido de las celdas principa-les. Sugiera varias tablas de manera que Matt pueda analizarlas endistintas formas.Ahora elabore gráficas que analicen los mismos datos. Use al-gunos de los ejemplos incluidos en el libro para sugerir el tipo degráficas y muestre los datos de manera que distintos usuarios conestilos diferentes puedan tomar algunas decisiones en relación con latendencia de las ventas durante los últimos años. Recuerde tambiéncomparar las escuelas. Sugiera las gráficas apropiadas a usar: de co-lumna, línea, trazos de dispersión o incluso gráficas de pastel.Sugiera además tres o cuatro cambios específicos que realizaríapara permitir que alguien con cierto grado de discapacidad visualpueda leer las gráficas con más facilidad. La ampliación es una formade cambiar una gráfica, pero tal vez no sea la mejor solución.Considere el tamaño de las escuelas, ya que se puede convertiren el factor más importante al determinar cómo debe Matt Scottajustar sus pedidos para St. David, Hyde y Pierce.www.xlibros.com
CAPÍTULO 14 • INTERACCIÓN HUMANO-COMPUTADORA 451Lineamientos de la metodología de la HCI para el diseño de sistemas• Examine la tarea a realizar y considere el ajuste entre humano, computadora y tarea.• Identifique los obstáculos que existen para los usuarios al tratar de cumplir con sus tareas asignadas.• Tenga en cuenta la utilidad y la facilidad de uso percibidas del TAM.• Considere la usabilidad. Examine el entorno de uso mediante la creación de escenarios de casos deuso que describan lo que ocurre entre los usuarios y la tecnología.• Use la información que haya obtenido de antemano para definir las característicasambientales físicas y organizacionales. Diseñe y use prototipos para adaptarse a los diversos usuariosy a los usuarios con discapacidades.FIGURA 14.8La metodología de la HCI para eldiseño de sistemas hace énfasis enel ajuste entre humano,computadora y tarea.la práctica de la usabilidad como tal; así, aunque intente introducir este cambio en su proyecto, es muy pro-bable que el puesto quede vacante o que batalle mucho con el personal. Pero no deje que esto lo desanime.Puede llevar a cabo algunos pasos simples que influirán en forma positiva en el resultado de su proyecto desistemas. La figura 14.8 muestra una lista de los lineamientos para aplicar una metodología de HCI en eldiseño de sistemas.Aunque hemos estado describiendo el sistema en abstracto, es importante reconocer que la interfaz es elsistema para la mayoría de los usuarios. Sin importar qué tan bien o mal diseñada esté, representa al sistema yrefleja su competencia como analista de sistemas. Una interfaz bien diseñada mejora el ajuste entre la tarea, latecnología y el usuario.Su objetivo debe ser diseñar interfaces que ayuden a los usuarios y las empresas a introducir la informa-ción al sistema y obtener de éste la información que necesitan, para lo cual hay que considerar los siguientesobjetivos:1. Hacer que la interfaz de usuario corresponda con la tarea.2. Hacer la interfaz de usuario eficiente.3. Proveer una retroalimentación apropiada a los usuarios.4. Generar consultas que se puedan utilizar.5. Mejorar la productividad de los usuarios de computadora.TIPOS DE INTERFAZ DE USUARIOEn esta sección describiremos distintos tipos de interfaces de usuario, incluyendo las de lenguaje natural, las depreguntas y respuestas, los menús, las interfaces de llenado de formularios, las interfaces de lenguaje de coman-dos, las interfaces gráficas de usuario (GUI) y otras interfaces Web para usar en Internet. La interfaz de usuariotiene dos componentes principales: el lenguaje de presentación, que es la parte de la transacción de la compu-tadora al humano, y el lenguaje de acción, que caracteriza la parte del humano a la computadora. En conjunto,ambos conceptos abarcan la forma y el contenido del término interfaz de usuario.Interfaces de lenguaje naturalLas interfaces de lenguaje natural son tal vez el sueño y el ideal de los usuarios sin experiencia, ya que norequieren tener habilidades especiales y pueden interactuar con la computadora mediante el uso de lenguajenatural.La pantalla que se muestra en la figura 14.9 incluye una lista de tres preguntas en lenguaje natural paratres aplicaciones. Observe que la interacción con cada pregunta se ve muy sencilla. Por ejemplo, el primerenunciado parece bastante simple y directo: “Mencione los vendedores que cumplieron con sus cuotas estemes”.Las ambigüedades naturales de algunos idiomas, como el inglés y en menor medida el español, producenarduos problemas de programación. Los intentos de crear interfaces en lenguaje natural para ciertas aplica-ciones en las que cualquier otro tipo de interfaz no sería viable (por ejemplo, en el caso de un usuario disca-pacitado) están teniendo algo de éxito; sin embargo, comúnmente estas interfaces son costosas. Hasta ahora,los problemas de implementación y la extraordinaria demanda de recursos de cómputo han mantenido el usode las interfaces de lenguaje natural al mínimo. Pero la demanda existe, por lo que muchos programadores einvestigadores están trabajando con diligencia en ellas. Es un área de crecimiento, por lo que amerita mante-nerse al tanto de ella.www.xlibros.com
452 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOInterfaces de preguntas y respuestasEn una interfaz de preguntas y respuestas, la computadora despliega una pregunta para el usuario en la panta-lla. Para interactuar, el usuario introduce una respuesta (mediante una pulsación de tecla o un clic del ratón) ydespués la computadora actúa con base en esa información de entrada en forma preprogramada, por lo generalavanzando a la siguiente pregunta.En la figura 14.10 se muestra un tipo de interfaz de preguntas y respuestas, conocido como cuadro de diá-logo. Un cuadro de diálogo actúa como una interfaz de preguntas y respuestas dentro de otra aplicación, en este> Mencione los vendedores que cumplieron con sus metas este mes.> Compare el porcentaje de productos echados a perder en cada una de nuestrastres tiendas.> Grafique la venta de unidades de DVD por mes durante los últimos tres años.Tom OttoRoz BerrySpin EtchFair Oaks 4%Tyson’s 5%Metro Center 3%Oprima cualquier tecla para continuar.FIGURA 14.9Interfaces de lenguaje natural.9/2410/2210/2210/2210/22AdministrarcuestionarioEntrevistar aB. CrieghtonCrear prototipode entradaDesarrollar basede datosCrear prototipode salidaResolverinformación enconflicto¿Guardar cambios antes de salir?CancelarNoProyecto Bakerloo Bros.Archivo Edición Gráfica Tarea Distribución Fechas Fuentes EstiloFIGURA 14.10Un cuadro de diálogo: un tipo deinterfaz de preguntas y respuestas.www.xlibros.com
CAPÍTULO 14 • INTERACCIÓN HUMANO-COMPUTADORA 453caso una gráfica de PERT para un proyecto de análisis de sistemas para Bakerloo Brothers. Observe que el rec-tángulo redondeado para la opción “Sí” está resaltado para indicar que es la respuesta más probable en esa situa-ción. La interfaz principal para esta aplicación no necesita ser de preguntas y respuestas. Más bien, mediante laincorporación de un cuadro de diálogo el programador ha incluido una interfaz fácil de usar dentro de una máscomplicada.Los asistentes que se utilizan para instalar software son un ejemplo común de una interfaz de preguntas yrespuestas. El usuario responde a las preguntas sobre el proceso de instalación, como dónde instalar el softwareo las herramientas. El asistente también puede hacer preguntas y responder a las preguntas del usuario con máspreguntas diseñadas para reducir el alcance del problema. Ésta es una manera típica de establecer una interfaz desoporte técnico para reducir los problemas y diagnosticarlos con más precisión.MenúsUna interfaz de menú toma debidamente prestado el nombre de la lista de platillos que se pueden selec-cionar en un restaurante, pues de manera similar, provee al usuario una lista en pantalla de las seleccionesdisponibles.Para responder al menú, el usuario está limitado a las opciones que se muestran en la pantalla. El usuario notiene que conocer el sistema, pero sí necesita saber qué tarea debe realizar. Por ejemplo, en un menú típico deun procesador de palabras, los usuarios pueden elegir las opciones Edición, Copiar o Imprimir, pero para usar elmenú con eficiencia, los usuarios deben saber qué tarea desean realizar.Los menús no dependen del hardware. Las variedades abundan. Se pueden configurar para usar la entradadesde el teclado, un lápiz óptico, pantalla táctil o ratón. Las selecciones se pueden identificar mediante un nú-mero, una letra o una palabra clave, o los usuarios pueden hacer clic en una selección con un ratón. La consisten-cia es importante al diseñar una interfaz de menú.Los menús también se pueden hacer a un lado hasta que el usuario los necesite. La figura 14.11 muestracómo el usuario utiliza un menú desplegable mientras construye un diagrama PERT para un proyecto de análisisde sistemas que está terminando para Bakerloo Brothers. El usuario coloca el puntero en Fechas y despliega elmenú hacia abajo. Después coloca el puntero en Calendario y selecciona la opción para mostrar el proyecto enun calendario mensual convencional.Los menús se pueden anidar unos dentro de otros para conducir a un usuario por las opciones en un pro-grama. Los menús anidados permiten que la pantalla aparezca menos desordenada, la cual es consistente con elbuen diseño. También permiten a los usuarios evitar ver las opciones de menú que no les interesan. Los menúsanidados también pueden desplazar a los usuarios rápidamente por el programa.9/2410/2210/2210/2210/22AdministrarcuestionarioEntrevistar aB. CrieghtonCrear prototipode entradaDesarrollarbase de datosCrear prototipode salidaResolverinformaciónen conflictoMostrar Fechas MEstablecer Primer Inicio PEstablecer Final Más Reciente MEscala de Duración DEscala de Línea del Tiempo TCalendar CArchivo Edición Gráfica Tarea Distribución Fechas Fuentes EstiloFIGURA 14.11Un menú desplegable está ahícuando el usuario lo necesita.www.xlibros.com
454 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOO P O R T U N I D A D D E C O N S U L T O R Í A 1 4 . 2Preferiría hacerlo yo mismo“Puedo pedir a Mickey que descargue los datos que necesitode la Web o de nuestro servidor a mi PC”, le dice DeWittMiwaye, un gerente de nivel superior para Yumtime Foods (unaempresa mayorista de alimentos de la región del Medio Oeste).“Obtener los datos no es problema. Lo que no quiero son mu-chos informes. Preferiría obtener los datos yo mismo”.Miwaye continúa y le dice que, como ejecutivo, no uti-liza su PC tanto como quisiera, tal vez sólo tres veces al mes,pero tiene algunas ideas muy específicas sobre lo que le gus-taría hacer con ella.“Me gustaría poder realizar algunas comparaciones por mi propiacuenta. Podría comparar la tasa de rotación para todos nuestros 12 alma-cenes. También me gustaría ver con qué eficiencia se utiliza la capacidadde cada uno de nuestros almacenes. Algunas veces quisiera poder grafi-car las comparaciones o ver un diagrama de ellas a través del tiempo”.Compare en tres párrafos los tres tipos de interfaces que Miwayepodría usar. Después recomiende una interfaz que pueda usar y quetome en cuenta su uso infrecuente de la PC, el hecho de que disfrutatrabajar con datos crudos y su deseo de ver los datos en pantalla devarias formas.Los menús de GUI se utilizan para controlar el software de PC y tienen los siguientes lineamientos:1. La barra de menús principal siempre se muestra.2. El menú principal usa una sola palabra para los elementos de menú. Las opciones del menú principalsiempre muestran menús desplegables secundarios.3. El menú principal debe tener opciones secundarias agrupadas en conjuntos similares de características.4. Los menús desplegables que aparecen al hacer clic en un elemento del menú principal consisten a menudode más de una palabra.5. Las opciones secundarias desempeñan acciones o muestran elementos de menú adicionales en pantalla.6. Los elementos de menú en gris no están disponibles para la actividad actual.Un menú de objeto, también conocido como menú contextual, aparece cuando el usuario hace clic en un ob-jeto de la GUI con el botón derecho del ratón. Estos menús contienen elementos específicos para la actividad encurso y la mayoría son funciones duplicadas de los elementos del menú principal.Los usuarios experimentados podrían molestarse con los menús anidados. Tal vez prefieran usar una entradade comando de una sola línea para agilizar las cosas. Otros usuarios podrían usar las teclas de método abreviadoo combinaciones de teclas tales como Alt .I .P  C, que inserta una imagen prediseñada en un documento deMicrosoft Office.Interfaces de llenado de formularios (formularios de entrada/salida)Las interfaces de llenado de formularios consisten en formularios en pantalla o basados en Web que muestran loscampos que contienen elementos de datos o parámetros necesarios para comunicarse con el usuario. A menudoel formulario es un facsímil de un formulario en papel ya conocido por el usuario. Esta técnica de interfaz seconoce también como método basado en formulario y formularios de entrada/salida.La figura 14.12 muestra una interfaz de llenado de formulario. Un menú desplegable para Núm. Pieza in-troduce en forma automática una Descripción y un Precio Unitario para el artículo. Cuando el usuario usa eltabulador para cambiar al campo Cantidad e introduce el número de elementos que desea comprar, el softwarecalcula de manera automática el Precio Extendido al multiplicar Cantidad por Precio Unitario.Los formularios para las pantallas de visualización se establecen para mostrar qué información se debe in-troducir y dónde hay que hacerlo. Los campos en blanco que requieren información se pueden resaltar con ca-racteres inversos o destellantes. El usuario desplaza el cursor de un campo a otro al oprimir una tecla de flecha.Esta disposición le permite desplazarse un campo hacia atrás o un campo hacia delante con sólo hacer clic enla tecla de flecha apropiada. Provee al usuario un buen control al momento de introducir datos. Los formulariosbasados en Web ofrecen la oportunidad de incluir hipervínculos a ejemplos de formularios completados en formacorrecta, o hipervínculos donde el usuario puede obtener más ayuda y ejemplos.Podemos simplificar la entrada de los formularios para las pantallas si proveemos valores predeterminadospara los campos y después permitimos a los usuarios modificar la información predeterminada, en caso de sernecesario. Por ejemplo, un sistema de administración de bases de datos diseñado para mostrar un formulariowww.xlibros.com
CAPÍTULO 14 • INTERACCIÓN HUMANO-COMPUTADORA 455Blocs de notas, 4 pulg. X 5 pulg., caja de 25Cinta transparente, 12mm x 33mm, caja de 12Hi-Liter, colores surtidos, caja de 12Orden de compraFecha del pedido Requerido por Núm. de requisa(MM/DD/AAAA) (MM/DD/AAAA)Nombre y dirección del distribuidor Enviar aNúm. Pieza Descripción Cantidad PreciounitarioPrecioextendidoFIGURA 14.12Un ejemplo de la interfaz dellenado de formularios.para introducir cheques puede proveer el siguiente número de cheque secuencial como valor predeterminado almomento de exhibir el formulario del cheque nuevo. Si faltan cheques, el usuario modifica el número de chequepara reflejar el cheque actual que se está introduciendo.La entrada para los campos de las pantallas de visualización se puede restringir al formato alfanumérico para que,por ejemplo, los usuarios puedan introducir sólo números en un campo que solicite un número de Seguro social, o quepuedan introducir sólo letras donde se requiera el nombre de una persona. Si se introducen números donde sólo se per-miten letras, la computadora puede alertar al usuario mediante un sonido que el campo se llenó en forma incorrecta.La principal ventaja de la interfaz del formulario de entrada/salida es que la versión impresa del formula-rio de llenado provee una excelente documentación. Muestra las etiquetas de los campos, así como el contextopara las entradas. Además, los formularios Web pueden devolver formularios incompletos al usuario con unaexplicación de los datos que se deben introducir para completar la transacción. A menudo, los campos con datosfaltantes se marcan con un asterisco de color rojo. Los documentos basados en Web se pueden enviar de maneradirecta a facturación si hay una transacción involucrada, o pueden ir directamente a una base de datos en tiemporeal si se va a enviar una encuesta. Los formularios basados en Web pasan la responsabilidad de la precisión alusuario y ponen el formulario a su disposición para que lo completen y envíen las 24 horas del día, los 7 días dela semana en cualquier parte del mundo.Hay unas cuantas desventajas en los formularios de entrada/salida. La principal desventaja es que los usua-rios experimentados en el sistema o una aplicación podrían impacientarse con los formularios de entrada/salida ypodrían garantizar maneras más eficientes de introducir datos.Interfaces de lenguaje de comandosUna interfaz de lenguaje de comandos permite al usuario controlar la aplicación mediante una serie de pulsacio-nes de tecla, comandos, frases o alguna secuencia de estos tres métodos. Las sintaxis simples de los lenguajes decomandos se consideran cercanas al lenguaje natural.En la figura 14.13 se muestran dos ejemplos de aplicación del lenguaje de comandos. El primero muestra aun usuario que pide usar un archivo con datos sobre todos los vendedores y después pide a la computadora quemuestre todos los apellidos paternos y nombres de pila para todos los vendedores cuyas ventas actuales (VEN-TACT) sean mayores que sus cuotas. En el segundo ejemplo, un usuario pide usar un archivo llamado ABARRy después instruye a la computadora que calcule los desperdicios (DESPERD), para lo cual hay que restar losproductos vendidos de los productos comprados. Después de eso el usuario pide regresar a la parte superior delarchivo para imprimirlo (LISTA).El lenguaje de comandos no tiene un significado inherente para el usuario; esto lo diferencia de las demásinterfaces descritas. Los lenguajes de comandos manipulan la computadora como una herramienta al permitirque el usuario controle el diálogo. El lenguaje de comandos ofrece al usuario más flexibilidad y control en ge-neral. Cuando el usuario emplea el lenguaje de comandos, el sistema ejecuta el comando de inmediato; así, elusuario puede darle otro comando.Los lenguajes de comandos requieren la memorización de reglas de sintaxis, lo que puede constituir un obs-táculo para los usuarios inexpertos. Los usuarios expertos tienden a preferir los lenguajes de comandos, posible-mente debido a que se llevan a cabo con mucha más rapidez.www.xlibros.com
456 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOInterfaces gráficas de usuarioLa clave para las interfaces gráficas de usuario (GUI) es la retroalimentación constante en la realización de lastareas que proveen a los usuarios. La retroalimentación continua sobre el objeto manipulado significa que se pue-den cambiar o invertir las operaciones con rapidez, sin incurrir en mensajes de error.La creación de GUI impone un reto, pues hay que inventar un modelo apropiado de la realidad o un modeloconceptual aceptable de la representación. Para diseñar GUI que se utilicen en intranets, extranets y en la Webse requiere una planeación todavía más cuidadosa. La mayoría de los usuarios de sitios Web son desconocidospara el desarrollador, por lo que el diseño debe estar bien definido. La elección de iconos, lenguaje e hipervíncu-O P O R T U N I D A D D E C O N S U L T O R Í A 1 4 . 3No me desaceleren“Las he visto todas”, le comenta Carrie Moore. “Estuve aquícuando obtuvieron su primer sistema de cómputo. Creo que hastahe hecho una carrera de esto”, dice alegremente mientras apunta ala gran pila de formularios de reclamaciones de seguros médicosque ha estado introduciendo en el sistema de cómputo. Como ana-lista de sistemas usted está entrevistando a Carrie, una capturista dedatos para AbundaCare (una empresa grande de seguros médicos),sobre los cambios que se contemplan en el sistema de cómputo.“Soy realmente rápida en comparación con los demás”, dicemientras señala con la cabeza hacia los otros seis capturistas de lasala. “Lo sé porque tenemos pequeños concursos todo el tiempopara ver quién es el más rápido, con la menor cantidad de errores.¿Ve esa tabla en la pared? Muestra cuántos datos hemos introducidoy con qué rapidez. Las estrellas doradas muestran quién es el mejorcada semana. Las medidas de desempeño son mis amigas”.“En realidad no me importa si cambia las computadoras. Comodije, ‘las he visto todas’”. Vuelve a teclear en su equipo mientrascontinúa con la entrevista. “Pero cualquier cosa que vaya a hacer,no me desacelere. Una de las cosas que más me enorgullecen es quetodavía puedo vencer a los otros capturistas, que también son bue-nos”, agrega Carrie.Con base en esta entrevista parcial con Carrie Moore, ¿qué tipode interfaz de usuario diseñará para ella y los otros operadores?Suponga que incluso cuando el nuevo sistema está mejorado, de to-das formas requerirá la introducción de cantidades masivas de datosprovenientes de variedad de formularios de seguros médicos envia-dos por los solicitantes.Compare y contraste en dos párrafos las interfaces como la de len-guaje natural, de preguntas y respuestas, menús, formularios de entrada/salida, y documentos de llenado basados en Web. Después seleccioney defienda una alternativa. ¿Qué cualidades de las que poseen Carrie ylos otros capturistas (además de los datos que van a introducir) deter-minaron su elección? Haga una lista. ¿Hay más de una opción viable?¿Por qué sí o por qué no? Responda en un párrafo.USAR VENDEDORMOSTRAR TODO APELLIDO, NOMBRE PARA VENTACT > CUOTAUSAR ABARRREEMPLAZAR TODO DESPERD CON PCOMPRADOS – PVENDIDOSIRA SUPERIORLISTAFIGURA 14.13Interfaces de lenguaje decomandos.www.xlibros.com
CAPÍTULO 14 • INTERACCIÓN HUMANO-COMPUTADORA 457los se convierte en todo un conjunto completo de decisiones y suposiciones sobre los tipos de usuarios que es-pera atraer el sitio Web. El diseñador también debe adherirse a las convenciones que los usuarios esperan ahoraencontrar en los sitios Web.Otras interfaces de usuarioHay otras interfaces de usuario menos comunes que están creciendo en popularidad: dispositivos señaladorescomo plumillas, pantallas sensibles al tacto, reconocimiento de voz y síntesis, etc. Cada una de estas interfacestiene sus propios atributos especiales que la adaptan en forma única a ciertas aplicaciones.La plumilla (un pequeño dispositivo con punta que se asemeja a una pluma) se utiliza con el software dereconocimiento de escritura para teléfonos móviles (que actúan como PDA: asistentes personales digitales) ydispositivos de PC. Han sido un éxito debido a que integran muchas funciones y son fáciles de usar. Además sonportátiles y se venden a un precio relativamente bajo. Han surgido muchas aplicaciones divertidas y útiles escri-tas para estos dispositivos móviles, incluyendo programas populares para reseñas de restaurantes como Zagat,herramientas populares como listas de “tareas pendientes” para uso de trabajo y personal, y para juegos popula-res como Sudoku. También se facilita el proceso de introducir datos mediante una base de acoplamiento, de ma-nera que se puedan sincronizar los datos con su PC.Una Tablet PC es una computadora tipo notebook con una pantalla sensible al tacto. Puede estar equipadacon conexión Wi-Fi o Bluetooth. Las pantallas sensibles al tacto permiten al usuario usar un dedo o una plumillapara operarlas. Son útiles para visualizar información pública, como mapas de las ciudades y sus vistas publi-cados en vestíbulos de hoteles o locales de renta de automóviles. También se pueden usar para explicar piezasde exhibición en los museos y localizar lugares para acampar en los parques estatales. Las pantallas sensibles altacto no requieren que los usuarios tengan una experiencia especial; además la pantalla es autocontenida, por loque no requiere de ningún dispositivo especial de entrada que alguien podría quebrar o robar. Las pantallas sen-O P O R T U N I D A D D E C O N S U L T O R Í A 1 4 . 4Ésa no es una bombillaA partir del análisis preliminar que usted realizó, se desprende quehabría una considerable reducción en la cantidad de errores si losvendedores en Bright’s Electric (que vende piezas eléctricas, bulbosy accesorios a clientes de mayoreo) adoptan un sistema en línea. Elnuevo sistema permitiría a los vendedores retirar una pieza del inven-tario (y por lo tanto actualizar el inventario), devolver una pieza alinventario, revisar el estado del inventario y verificar si una pieza estáen pedido pendiente. En la actualidad, para actualizar el inventario losvendedores llenan un formulario a mano con dos copias y un original.El cliente recibe una copia, el inventario recibe una y al final del díalos originales se depositan en la oficina frontal.La siguiente mañana, lo primero que hace el solitario trabaja-dor de oficina es introducir los datos de los formularios en la compu-tadora. Se producen errores cuando introduce los números de piezao las cantidades incorrectas. Se consume tiempo adicional cuandolos trabajadores del inventario buscan una pieza que creen que po-dría tener existencia, pero no es así. Hay hojas de inventario actua-lizado disponibles para los vendedores cerca de mediodía, pero paraesas horas ya han sacado del inventario el doble del número depiezas que sacarán después de mediodía. Sin duda, un sistema enlínea bien diseñado ayudaría a reducir estos errores y también ayu-daría con el control del inventario.El propietario, Luis Bright, ha contemplado la idea de un sistemaen línea y la ha descartado varias veces durante los últimos cinco años.La principal razón es que los vendedores, que serían los usuarios másfrecuentes del sistema, no creen que los analistas de sistemas con losque han hablado puedan crear un sistema realmente útil.M. T. Sockette, el vendedor que ha estado más tiempo conBright’s Electric, es el que más habla de todos y le dice: “Conoce-mos las piezas, conocemos a nuestros clientes. Lo que podríamoshacer aquí con una computadora sería grandioso. Pero los que hanvenido aquí para tratar de hacer algo... bueno, dicen cosas como:‘Ahora puedes introducir una bombilla CFL General Electric de 60Watts en la computadora’”.“Para nosotros esa no es una bombilla, es un GE60WCFL.Todos aquí conocemos los números de las piezas. Nos enorgullece-mos de ello. Escribir toda esa basura nos tomará todo el día”.Después de hablar con el Sr. Bright, usted decide implementarun sistema en línea. Ya habló con M. T. y los demás para volver aasegurarles que el sistema utilizará los números de pieza con los queestán familiarizados y les ahorrará tiempo. Aunque son escépticos,usted los ha persuadido de hacer un intento.¿Qué tipo de interfaz de usuario diseñará para los vendedo-res? Antes de llegar a su solución, haga un análisis cuidadoso entres párrafos en el que compare y contraste varias interfaces deusuario (lenguaje natural, preguntas y respuestas, menús, formula-rios de entrada/salida, lenguaje de comandos y documentos dellenado de formularios basados en Web) en cuanto a la forma enque se podrían adaptar en Bright’s. Después seleccione una inter-faz y explique en un párrafo por qué le parece la más apropiada conbase en lo que sabe acerca de los vendedores de Bright’s y su sis-tema actual. Dibuje un prototipo de una pantalla que será parte desu solución. Describa en un párrafo cómo probará su usabilidadcon los vendedores.www.xlibros.com
458 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOsibles al tacto (también conocidas simplemente como pantallas táctiles o tabletas táctiles) para los teléfonos mó-viles como el iPhone y la BlackBerry están convirtiendo esta interfaz de usuario alternativa en algo familiar y deuso extendido. Las investigaciones recientes examinan la forma de poder comercializar las tabletas táctiles sensi-bles a presión. Estas interfaces se pueden usar con pantallas táctiles tanto grandes como pequeñas y son prácticaspara las aplicaciones como la pintura o escultura virtual, un ratón simulado y para instrumentos musicales comoun teclado de piano, donde la intensidad de la presión aplicada es crucial para la salida.Con el reconocimiento de voz, el usuario habla a la computadora y el sistema es capaz de reconocer lasseñales de voz de un individuo, convertirlas y almacenar la entrada. El reconocimiento de voz en los sistemasde inventario ya se encuentra en operación; los automóviles ahora incluyen sistemas de entrada de voz que res-ponden a los comandos de voz del conductor para navegar, cambiar la estación de radio o usar un teléfono conBluetooth conectado al vehículo.Una ventaja de los sistemas de reconocimiento de voz es que pueden agilizar la entrada de datos en formaconsiderable, además de que liberan las manos del usuario para otras tareas (como conducir, por ejemplo). Laentrada de voz agrega otra dimensión a la PC: ahora es posible agregar equipo y software que permita al usuariode una PC hablar los comandos como “abrir archivo” o “guardar archivo” para no tener que usar el teclado o elratón. Los usuarios con movilidad limitada o discapacidad visual se pueden beneficiar de los sistemas de recono-cimiento de voz. En el ejemplo que se muestra en la figura 14.14, para corregir una palabra el usuario despliegaun menú de palabras alternativas parecidas.Al evaluar las interfaces hay que tener en cuenta ciertos estándares:1. El periodo de capacitación necesario para los usuarios debe ser razonablemente corto.2. En las primeras etapas de su capacitación, los usuarios deben ser capaces de introducir los comandos sinpensar en ellos o tener que consultar un menú o manual de ayuda. Mantener las interfaces consistentes entodas las aplicaciones es conveniente en este caso.3. La interfaz debe ser transparente, de manera que haya pocos errores y los que ocurran no se deban a un mal diseño.4. El tiempo que los usuarios y el sistema necesitan para recuperarse de los errores debe ser corto.5. Los usuarios infrecuentes deben ser capaces de volver a aprender a usar el sistema rápidamente.Hay muchas interfaces distintas disponibles, por lo que es importante tener en cuenta que una interfaz efec-tiva requiere de mucho esfuerzo para poder lidiar con las cuestiones clave de la HCI. Tal vez los usuarios quieranusar el sistema, por lo que debe parecerles atractivo, eficiente y divertido de usar.LINEAMIENTOS PARA EL DISEÑO DEL DIÁLOGOEl diálogo es la comunicación entre la computadora y una persona. Un diálogo bien diseñado facilita a las perso-nas el proceso de usar una computadora y reduce su frustración con el sistema de cómputo.Sugerencias prácticas paradesarrollar un sitio WebAcostumbreacostumbreAcosarUse herramientas profesiEstudie otros sitios WebUse los recursos queExamine los sitios Web deAcostúmbrese a las herrarConsulte los librosVea algunos malos ejemplos de páginas WebCree sus propias plantillasAcostúmbreseFIGURA 14.14Mediante el uso de software comoDragon NaturallySpeaking deNuance, un usuario puede decirlos comandos en su computadora.En este ejemplo, para corregir unapalabra el usuario despliega unmenú de palabras alternativas quesuenan igual.www.xlibros.com
CAPÍTULO 14 • INTERACCIÓN HUMANO-COMPUTADORA 459Como recordará, los elementos del TAM (modelo de aceptación de tecnología) indican que la utilidad y lafacilidad de uso percibidas tempranamente provocarán en el usuario la intención de usar el sistema y, en un mo-mento dado, empezará a utilizarlo. Hay varios puntos clave para diseñar un buen diálogo:1. Una comunicación significativa, de manera que la computadora comprenda lo que las personas introducen ylas personas comprendan lo que la computadora presenta o solicita.2. Una mínima acción por parte del usuario.3. Operación y consistencia estándar.Comunicación significativaEl sistema debe presentar con claridad la información al usuario. Esto significa tener un título apropiado paracada pantalla, minimizar el uso de las abreviaturas y proveer una retroalimentación clara al usuario. Los pro-gramas de investigación deben mostrar los significados del código así como los datos en un formato editado;por ejemplo, mostrar barras diagonales entre el mes, día y año en un campo de fecha o las comas y los puntosdecimales en un campo de cantidad monetaria. Hay que proveer instrucciones para el usuario en relación conlos detalles, como las asignaciones disponibles para las teclas de función. En una interfaz gráfica de usuario, elcursor puede cambiar de forma dependiendo del trabajo que se esté realizando.Los usuarios con menos habilidad para usar la computadora o los que realizan sus tareas con una compu-tadora requieren de mayor comunicación. Los sitios Web deben mostrar más texto e instrucciones para guiar alusuario por todo el sitio. Los sitios de intranets pueden tener menos diálogo, ya que hay requerimientos mínimosen cuanto al grado de capacitación de los usuarios. Las imágenes de Internet deben tener descripciones de textodesplegables o de sustitución cuando se utilicen imágenes como hipervínculos, ya que puede haber incertidum-bre al interpretar su significado, en especial si el sitio se utiliza a nivel internacional. Cabe mencionar que loslineamientos de la UE para la visualización de imágenes Web requieren que todas ellas estén etiquetadas, paraque los usuarios con discapacidad visual puedan escuchar cuando se anuncien descripciones escritas por mediode software especial. La información de la línea de estado para las pantallas de GUI es otra forma de proveerinstrucciones para los usuarios.Además hay que proporcionar pantallas de ayuda fáciles de usar. Muchas pantallas de ayuda de PC tienentemas adicionales que se pueden seleccionar de manera directa mediante el uso de texto resaltado en la primerapantalla de ayuda. Por lo general, estos hipervínculos están en un color distinto, lo cual los hace resaltar encontraste con el resto del texto de ayuda. Recuerde usar iconos o texto además de la codificación de color parapoder hacer contacto con la mayor cantidad de usuarios que sea posible. Muchas GUI incorporan la ayuda me-diante cuadros de información sobre las herramientas, donde se muestra un pequeño mensaje de ayuda paraidentificar la función de un botón de comando cuando se coloca el cursor encima de éste. El otro lado de la co-municación es que la computadora debe comprender lo que introdujo el usuario. Por ende, hay que editar todoslos datos que se introduzcan en la pantalla para que sean válidos.Mínima acción por parte del usuarioLa acción de teclear es a menudo la parte más lenta de un sistema de cómputo, por lo que un buen diálogo mini-mizará el número de pulsaciones de tecla requeridos. Podemos lograr esto de varias formas distintas:1. Teclear códigos en las pantallas de entrada, como los códigos de aeropuertos al hacer una reservaciónde un vuelo, en vez de palabras completas. Los códigos también se teclean cuando se utiliza una interfazde lenguaje de comandos, como una abreviación postal de dos letras para los estados. En una GUI, loscódigos se pueden introducir mediante la selección de descripciones de los códigos de una lista desplegablede opciones disponibles. Esto ayuda a asegurar la precisión, ya que el código se almacena como un valor dela lista desplegable; además ayuda a proveer una comunicación significativa, ya que se seleccionandescripciones familiares para el usuario. Un ejemplo sería seleccionar una provincia canadiense y hacerque se almacene el código postal de dos caracteres.2. Introducir sólo datos que no estén ya almacenados en los archivos. Por ejemplo, al modificar oeliminar registros de artículos, sólo hay que introducir el número del artículo. La computadoraresponde mostrando la información descriptiva que se encuentra almacenada en el archivo de artículos.Otro ejemplo es cuando un usuario inicia sesión en un sitio Web y se utiliza el ID de usuario parabuscar los registros relacionados tales como el registro de clientes, las facturas pendientes, los pedidos,etcétera.3. Proveer los caracteres de edición (por ejemplo, las barras diagonales como separadores de campos defecha). Los usuarios no deberían tener que introducir caracteres de formato como ceros a la izquierda,comas o un punto decimal al introducir montos de dinero; tampoco barras diagonales o guiones alintroducir una fecha. En general, los sitios Web son una excepción a esta regla, ya que los formularioswww.xlibros.com
460 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOWeb no incluyen barras diagonales ni puntos decimales. Algunos formularios Web utilizan una serie decampos de entrada con caracteres de edición entre ellos, como los paréntesis alrededor de un códigode área.4. Usar valores predeterminados para los campos en las pantallas de entrada. Los valores predeterminadosse utilizan cuando el usuario introduce el mismo valor en un campo de pantalla para la mayoría de losregistros que se están procesando. El valor se muestra y el usuario puede oprimir Intro para aceptar el valorpredeterminado, o sobrescribirlo con uno nuevo. Las GUI pueden contener casillas de verificación y botonesde opción que se seleccionen al abrir un formulario Web o cuadro de diálogo. Los menús sensibles alcontexto aparecen cuando se hace clic en un objeto con el botón derecho del ratón. Estos menús contienenopciones específicas para el objeto que está debajo del ratón.5. Diseñar un programa de consulta (o de modificación, o eliminación) de manera que el usuario necesiteintroducir sólo los primeros caracteres de un nombre o la descripción de un artículo. El programa muestrauna lista de todos los nombres que coincidan y, cuando el usuario selecciona uno, se muestra el registrocorrespondiente.6. Proveer pulsaciones de tecla para seleccionar las opciones de los menús desplegables. A menudo estasopciones se seleccionan mediante un ratón y después se pulsa una tecla. A medida que los usuarios se vanfamiliarizando con el sistema, las teclas de método abreviado ofrecen un método más rápido para manipularlos menús desplegables, ya que ambas manos permanecen en el teclado. Esto ayuda a los usuarios a volverseeficientes en sus tareas. En una PC o Mac, las pulsaciones de tecla por lo general requieren que se oprimauna tecla de función o la tecla Alt seguida de una letra. La figura 14.15 es un ejemplo de menús desplegablesanidados.7. Usar botones de opción y listas desplegables para controlar las pantallas de nuevas páginas Web omodificar formularios Web. Por ejemplo, hacer clic en un botón de opción puede cambiar una listadesplegable para reflejar el botón de opción que se seleccionó. Se puede hacer clic en un botón de opción yun formulario puede cambiar de acuerdo con la selección. Una lista desplegable puede cambiar o se puedehacer clic en un botón de opción para ir a una nueva página Web. A menudo las listas desplegables seproveen en una página Web para navegar con rapidez; al seleccionar una nueva página Web de la listadesplegable el usuario es transportado a esa página.8. Proveer control del cursor para los formularios Web y otras pantallas, de manera que el cursor sedesplace al siguiente campo cuando se haya introducido el número correcto de caracteres. Un ejemplosería cuando un usuario introduce un código de área para un teléfono de EE.UU. y, después de introducir lostres caracteres, el cursor cambia al campo del número telefónico local. Otro ejemplo es cuando se introducencódigos de claves de registro. A menudo los códigos están en grupos de cuatro o cinco letras y, cuando sellena el primer campo, el cursor avanza al siguiente campo, y así en lo sucesivo. El analista debe examinarcada campo para ver si es conveniente usar el control del cursor automático.Cualquier combinación de estas ocho metodologías puede ayudar al analista a reducir el número de pulsa-ciones de tecla requeridas por el usuario, con lo cual se agiliza la entrada de datos y se minimizan los errores.FIGURA 14.15Ejemplo de menús desplegablesanidados con teclas de métodoabreviado de Microsoft VisioProfessional.www.xlibros.com
CAPÍTULO 14 • INTERACCIÓN HUMANO-COMPUTADORA 461Operación y consistencia estándarEl sistema debe ser consistente a través de todas sus pantallas y todos sus mecanismos para operarlas en dis-tintas aplicaciones. La consistencia facilita a los usuarios el proceso de aprender a usar las nuevas porcionesdel sistema una vez que estén familiarizados con un componente. Podemos lograr la consistencia mediante lossiguientes puntos:1. Ubicar los títulos, la fecha, hora y los mensajes del operador y de retroalimentación en los mismos lugaresen todas las pantallas.2. Salir de cada programa mediante el uso de la misma clave u opción del menú.3. Cancelar una transacción de manera consistente, como usar la tecla esc.4. Obtener ayuda de una manera estandarizada, como usar una tecla de función.5. Estandarizar los colores utilizados para todas las pantallas o páginas Web.6. Estandarizar el uso de iconos para las operaciones similares al usar una interfaz gráfica de usuario.7. Usar una terminología consistente en una pantalla de visualización o sitio Web.8. Proveer una manera consistente de navegar por el diálogo.9. Mantener la consistencia en la alineación de las fuentes, el tamaño y el color en las páginas Web.RETROALIMENTACIÓN PARA LOS USUARIOSTodos los sistemas requieren de retroalimentación para supervisar y modificar el comportamiento. Por lo ge-neral, la retroalimentación compara el comportamiento actual con los objetivos predeterminados y devuelve lainformación que describe el vacío entre el desempeño actual y el esperado.Como los humanos en sí son sistemas complejos, requieren retroalimentación de otros para satisfacer las ne-cesidades psicológicas y cognoscitivas que vimos antes en el capítulo. La retroalimentación también incrementala confianza humana. El grado de retroalimentación requerido es una característica individual.Cuando los usuarios interactúan con las máquinas, de todas formas necesitan retroalimentación sobre el pro-greso de su trabajo. Como diseñadores de interfaces de usuario, los analistas de sistemas deben estar conscientesde la necesidad humana de retroalimentación para integrarla en el sistema. Además de los mensajes de texto, sepueden utilizar iconos con frecuencia. Por ejemplo, al mostrar un reloj de arena mientras el sistema procesa in-formación animamos al usuario a que espere un poco en vez de que oprima teclas en forma repetida para obteneruna respuesta.La retroalimentación proveniente del sistema es necesaria para el usuario en siete situaciones distintas. La re-troalimentación inoportuna o demasiado abundante no es útil, ya que los humanos poseen una capacidad limitadade notificar al usuario que el sitio está respondiendo y que la entrada es correcta o necesita más información.O P O R T U N I D A D D E C O N S U L T O R Í A 1 4 . 5En espera de ser alimentado“Sí, es cierto que vendimos un paquete. Éste de aquí. No memalentienda: sí hace el trabajo, sólo que no sabemos cuándo”.Usted se encuentra hablando con Owen Itt, quien le está con-tando sobre la reciente compra que hizo la unidad de ventas denuevo software para sus PC en red, el cual permite introducir losdatos de venta para cada uno de sus 16 vendedores, provee comosalida datos de comparación para ellos y proyecta las ventas a fu-turo con base en los registros de las ventas anteriores.“Pero hemos tenido algunas experiencias raras con este pro-grama”. Owen continúa: “Parece lento o algo así. Por ejemplo,nunca estamos seguros de cuándo termina. Yo escribo un comandopara obtener un archivo y no ocurre nada. Cerca de medio minutomás tarde, si tengo suerte, podría aparecer la pantalla que quiero,pero nunca puede uno estar seguro. Si le pido que guarde los datosde las ventas, sólo comienza a zumbar. Si funciona, me regresa adonde me encontraba antes; si no guarda los datos, de todas formasme devuelve al punto anterior. Es confuso y nunca sé lo que debohacer. No hay nada en la pantalla de visualización que me diga loque debo hacer a continuación. ¿Ve el pequeño manual que se in-cluyó con el sistema? Tiene las esquinas dobladas porque lo tuvi-mos que hojear varias veces para tratar de averiguar qué debíamoshacer después. También podemos conectarnos a Internet para bus-car ayuda en línea, pero su asistencia técnica es prácticamenteinexistente. Además se lleva mucho tiempo”.Con base en lo que escuchó en la entrevista, aproveche laoportunidad de complementar el software mediante el diseño dealgún tipo de retroalimentación en pantalla para Owen y su equipode ventas. La retroalimentación debe abarcar todas las preocupacio-nes de Owen y seguir los lineamientos para proporcionar retroali-mentación a los usuarios, además de los lineamientos para diseñarbuenas pantallas. Dibuje un prototipo de las pantallas que considerenecesarias para lidiar con los problemas que menciona Owen.www.xlibros.com
462 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOTipos de retroalimentaciónACUSAR LA ACEPTACIÓN DE LA ENTRADA La primera situación en la que los usuarios necesitanretroalimentación es para saber si la computadora aceptó la entrada. Por ejemplo, cuando un usuariointroduce un nombre en una línea, la computadora provee retroalimentación al usuario al desplazar el cursorun carácter a la vez cuando se introducen las letras correctamente. Un ejemplo Web sería una página Webque muestra el mensaje “Se procesó su pago, Su número de confirmación es 1234567. Gracias por usarnuestros servicios”.RECONOCER QUE LA ENTRADA ESTÁ EN EL FORMATO CORRECTO Los usuarios necesitan retroalimentaciónpara saber que la entrada está en el formato correcto. Por ejemplo, un usuario introduce un comando y laretroalimentación indica el mensaje “LISTO” mientras el programa progresa a un nuevo punto. Un mal ejemplode retroalimentación que indica al usuario que la entrada está en el formato correcto es el mensaje “ENTRADABIEN”, debido a que el mensaje ocupa espacio adicional, es ambiguo y no hace nada por animar al usuario aque introduzca más datos. Al colocar un pedido en Web o realizar un pago, por lo general aparece una página deconfirmación para solicitar al usuario que revise la información y haga clic en un botón o imagen para confirmarel pedido o pago.NOTIFICAR QUE LA ENTRADA NO ESTÁ EN EL FORMATO CORRECTO La retroalimentación es necesaria paraadvertir a los usuarios de que la entrada no está en el formato correcto. Cuando los datos son incorrectos, unamanera de informar al usuario es generar una ventana que describa brevemente el problema con la entrada yexplique cómo puede el usuario corregirlo, como se muestra en la figura 14.16.Cabe mencionar que el mensaje correspondiente a un error al introducir la duración de la suscripción esamable y conciso pero no enigmático, por lo que incluso hasta los usuarios inexpertos podrán entenderlo. Laduración de la suscripción para el boletín informativo en línea se introduce en forma incorrecta, pero la retroa-limentación no hace mucho hincapié en el error del usuario, sino que le ofrece opciones (13, 26 o 52 semanas)para que pueda corregirlo fácilmente. En una pantalla de GUI es común que la retroalimentación esté en formade un cuadro de mensaje con un botón Aceptar.Los mensajes Web tienen varios formatos. Uno de los métodos es devolver una nueva página con el mensajea un lado del campo que contiene el error. La nueva página Web puede tener un vínculo para obtener ayuda adi-cional. Este método funciona para todos los sitios Web; el servidor controla el proceso de detectar y dar formatoa la nueva página. Otro método utiliza JavaScript para detectar el error y mostrar un cuadro de mensaje en lapantalla actual con detalles sobre el error específico. Una ventaja de este método es que no se tiene que enviarla página Web al servidor, además de que es más sensible. Las desventajas son que, si se desactiva JavaScript,no se detectará el error y sólo se mostrará un error a la vez. También debe haber una forma de detectar el errorLista de suscripciones al boletín informativo en línea de SOAInicial primer nombre Inicial segundo nombre Apellido paternoNúmero Calle ApartamentoCiudad Estado Código postalDuración de la suscripción en semanasLa duración de la suscripción queintrodujo no se ofrece actualmente. Por favorseleccione 13, 26 o 52 semanas.M HURST68506CHKLINCOLN NE143349 SOUTH STREETCMétodo de pagoFIGURA 14.16La retroalimentación informa alusuario que la entrada no estaba enel formato correcto y muestra unalista de opciones.www.xlibros.com
CAPÍTULO 14 • INTERACCIÓN HUMANO-COMPUTADORA 463en el servidor. Una segunda desventaja es que tal vez JavaScript no detecte los errores en los que hay que leertablas de la base de datos, como verificar un número de tarjeta de crédito. Esto se puede compensar mediante eluso de Ajax para poder enviar el número al servidor y devolver un error a la página Web. Sin embargo, debemosrecordar que algunos usuarios desactivan de manera intencional el uso de JavaScript; por lo tanto, los analistasnecesitan seguir una variedad de tácticas al comunicar los errores.Las páginas Web también pueden usar JavaScript para detectar varios errores y mostrar mensajes de texto enla página. Hay que cuidar que los mensajes de error estén lo bastante remarcados como para que el usuario losvea. Una línea de texto pequeña de color rojo podría pasar desapercibida. Se puede usar un cuadro de mensaje osonidos para alertar a los usuarios al ocurrir uno o más errores.El analista debe decidir si se van a detectar e informar los errores cuando el usuario haga clic en el botónEnviar o en un hipervínculo (a esto se le conoce como validación por lotes), o si se van a detectar los erroresuno a la vez, como cuando un usuario introduce un mes como 14 y desplaza el cursor a otro campo. El segundométodo es más riesgoso, ya que una mala codificación podría hacer que el navegador entre en un ciclo infinito yel usuario tendrá que cerrarlo.Hasta ahora hemos visto la retroalimentación visual en forma de texto o iconos, pero muchos sistemastambién cuentan con herramientas de retroalimentación de audio. Cuando un usuario introduce datos enforma incorrecta, el sistema podría emitir un sonido en vez de proveer una ventana. Pero la retroalimentaciónde audio por sí sola no es descriptiva, por lo que no es tan útil para los usuarios como las instrucciones enpantalla. Use la retroalimentación de audio con moderación, tal vez para avisar de situaciones urgentes. Elmismo consejo se aplica también al diseño de sitios Web que se pueden ver en una oficina abierta, en dondelos sonidos se esparcen y las bocinas de escritorio de un compañero de trabajo están al alcance de los oídosde otras personas.EXPLICAR UN RETRASO EN EL PROCESAMIENTO Uno de los tipos más importantes de retroalimentación informaal usuario que habrá un retraso en el procesamiento de su solicitud. Los retrasos mayores de 10 segundosrequieren retroalimentación, para que el usuario sepa que el sistema sigue funcionando.La figura 14.17 muestra una pantalla que provee retroalimentación en una ventana para un usuario que acabade solicitar la impresión de la lista de suscripciones del boletín informativo electrónico. La pantalla muestra unenunciado que asegura al usuario que la solicitud se está procesando, así como un anuncio en la esquina superiorderecha que instruye al usuario que “ESPERE” hasta que se haya ejecutado el comando actual. La pantalla tam-bién provee la forma de detener la operación si es necesario.Algunas veces durante los retrasos, mientras se instala nuevo software se ejecuta un pequeño tutorial sobrela nueva aplicación, cuyo propósito es servir como distracción en vez de retroalimentación sobre la instalación.A menudo se utiliza una lista de los archivos que se van a copiar y una barra de estado para tranquilizar al usuarioLista de suscripciones al boletín informativo en línea de SOAInicial primer nombre Inicial segundo nombre Apellido paternoNúmero treetCiudad StateDuración de la suscripción en semanasentostalM odo de pagorinting is now in progress.To halt printing just type P.La impresión está en proceso.Para detener la impresión, oprima P.ESPEREFIGURA 14.17La retroalimentación indica alusuario que habrá un retrasodurante la impresión.www.xlibros.com
464 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOy asegurarle que el sistema está funcionando en forma apropiada. Por lo general los navegadores Web muestranlas páginas Web que se están cargando y el tiempo restante.Es imprescindible incluir retroalimentación al usar Ajax para actualizar los formularios Web. Como no secarga una nueva página Web, el usuario tal vez no esté consciente de que se están recuperando datos del servidorpara modificar la página Web actual. Cuando cambia una lista desplegable, un mensaje tal como “Por favor es-pere mientras se llena la lista.” informa al usuario sobre el cambio.Es muy importante sincronizar la retroalimentación de este tipo. Una respuesta demasiado lenta del sistemaprovocaría que el usuario introdujera comandos que impidan o interrumpan el procesamiento.ACUSAR EL LLENADO DE UNA SOLICITUD Los usuarios necesitan saber cuándo se completa su solicitud parapoder introducir nuevas solicitudes. A menudo aparece un mensaje de retroalimentación específico cuando elusuario completa una acción, como “Se agregó el registro del empleado”, “Se modificó el registro del cliente” o“Se eliminó el artículo número 12345”.NOTIFICAR QUE NO SE COMPLETÓ UNA SOLICITUD También se necesita la retroalimentación para hacer saberal usuario que la computadora no puede completar una solicitud. Si la pantalla indica “No se pudo procesarla solicitud. Revise la solicitud de nuevo”, el usuario puede entonces regresar para verificar si se introdujo lasolicitud en forma incorrecta, en vez de que siga introduciendo comandos que no se pueden ejecutar.OFRECER AL USUARIO UNA RETROALIMENTACIÓN MÁS DETALLADA Los usuarios necesitan tener la seguridadde que haya una retroalimentación más detallada disponible, y se les debe mostrar cómo pueden obtenerla. Sepueden emplear comandos como Asistir, Instruir, Explicar y Más. El usuario también puede escribir un signode interrogación o hacer clic en un icono apropiado para obtener más retroalimentación. Se ha cuestionado eluso del comando Ayuda como forma de obtener más información, ya que los usuarios se pueden sentir indefensoso atrapados en una trampa de la que deben escapar. Pero como esta convención es la que está en uso y gracias aque los usuarios están familiarizados con ella, el problema no es grave.Al diseñar interfaces Web es posible incrustar hipervínculos para permitir al usuario saltar a las pantallas deayuda relevantes o ver más información. Por lo general, los hipervínculos se resaltan con subrayado, cursiva o uncolor distinto. Pueden ser imágenes, texto o iconos.Incluir retroalimentación en el diseñoSi se utiliza en forma correcta, la retroalimentación puede ser un poderoso refuerzo de los procesos de aprendi-zaje de los usuarios, puede servir para mejorar el desempeño del usuario con el sistema, incrementar la motiva-ción para producir y mejorar el ajuste entre el usuario, la tarea y la tecnología.VARIAS OPCIONES DE AYUDA La retroalimentación en las computadoras personales se ha desarrollado a travésde los años. La “ayuda” empezó originalmente como una respuesta al usuario que oprimía una tecla de funcióntal como F1; la alternativa de la GUI es el menú de ayuda desplegable. Esta metodología era incómoda, ya quelos usuarios finales tenían que navegar por una tabla de contenido o buscar a través de un índice. Después surgióla ayuda sensible al contexto. Los usuarios sólo tenían que hacer clic en el botón derecho del ratón para revelarlos temas o explicaciones sobre la pantalla o área de la pantalla actual. Luego se produjo un tercer tipo de ayudaen las computadoras personales, donde el usuario coloca la flecha sobre un icono y la deja ahí durante un par desegundos. En este momento aparece en algunos programas un pequeño globo similar a los de las historietas. Esteglobo explica un poco sobre la función del icono.El cuarto tipo de ayuda es un asistente, el cual hace al usuario una serie de preguntas y después realiza laacción correspondiente. Los asistentes ayudan a los usuarios a realizar los procesos complicados o desconocidos,como establecer las conexiones de red o reservar el asiento de un avión en línea. La mayoría de los usuarios es-tán familiarizados con los asistentes dado que se emplean para crear una presentación de PowerPoint o elegir unestilo para un memo en el procesador de palabras.Además de integrar la ayuda en una aplicación, con frecuencia los fabricantes de software ofrecen ayudaen línea (ya sea automatizada o personalizada a través de un chat en vivo) o líneas de ayuda (sin embargo, lamayoría de las líneas telefónicas de servicio al cliente no son gratuitas). Algunos fabricantes de software COTSofrecen un sistema de envío de fax. Un usuario puede solicitar que se le envíe por fax un catálogo de varios do-cumentos de ayuda y después puede pedir del catálogo con sólo introducir el número del artículo mediante unteléfono de tonos.Por último, los usuarios pueden buscar y encontrar soporte de otros usuarios por medio de los foros de soft-ware. Claro está que este tipo de soporte es no oficial, por lo que la información que se obtenga puede ser cierta,parcialmente cierta o errónea. Los principios relacionados con el uso de los foros de software son los mismosque se mencionan más adelante en el capítulo 16, en donde examinaremos el método FOLKLORE y los sistemasde recomendaciones. Maneje con cautela y escepticismo todos los parches de software que se publican en lostableros de anuncios, blogs, grupos de discusión o salas de chat.www.xlibros.com
CAPÍTULO 14 • INTERACCIÓN HUMANO-COMPUTADORA 465Además de la ayuda informal en el software, los sitios Web de los distribuidores son en extremo útiles paraactualizar controladores, visores y el software en sí. La mayoría de las publicaciones de cómputo en línea tienencierto tipo de “vigilancia de controladores” o “informe de errores” que vigila los tableros de anuncios y los sitiosWeb en busca de programas útiles que se puedan descargar. Los programas buscarán en los sitios Web de los dis-tribuidores las actualizaciones más recientes, informarán a los usuarios sobre éstas, ayudarán con las descargas yen efecto actualizarán las aplicaciones del usuario.CONSIDERACIONES DE DISEÑO ESPECIALES PARA EL COMERCIO ELECTRÓNICOMuchos de los principios de diseño de interfaces de usuario que aprendió en este libro en relación con la retroalimen-tación también se extienden al diseño de sitios Web de comercio electrónico. En esta sección veremos unas cuantasconsideraciones adicionales que pueden brindar a sus diseños de interfaces Web una funcionalidad mejorada.Solicitar retroalimentación de los clientes del sitio Web de comercio electrónicoNo sólo hay que brindar a los usuarios retroalimentación sobre lo que ocurre con un pedido, sino que tambiéndebemos obtener retroalimentación de ellos. La mayoría de los sitios Web de comercio electrónico tienen un bo-tón Retroalimentación (Feedback). Hay dos maneras estándar de diseñar lo que los usuarios experimentarán alhacer clic en el botón Retroalimentación.La primera es iniciar el programa de correo electrónico del usuario con la dirección de correo electrónico del con-tacto de la empresa incluida automáticamente en el campo Para:. Este método evita los errores de escritura y facilitael proceso de contactar a la organización. El usuario no tiene que salir del sitio para comunicarse con la empresa. Sinembargo, estos mensajes generan la expectativa de que se van a responder de la misma forma que el correo ordina-rio o las llamadas telefónicas. Las investigaciones indican que el 60 por ciento de las organizaciones con este tipo deherramienta de contacto vía correo electrónico en sus sitios no tienen a nadie asignado para contestar a los mensajesde correo electrónico recibidos. Por ende, la empresa está perdiendo una valiosa retroalimentación, al tiempo que losclientes se hacen a la idea de que se están comunicando y se irritan cuando no reciben ninguna respuesta. Si usted di-seña este tipo de oportunidad de retroalimentación, también necesita diseñar los procedimientos para que la organiza-ción responda al correo electrónico del sitio Web. Algunos diseñadores manejan este problema mediante la creación desistemas para devolver de manera automática la respuesta a un correo electrónico, lo cual genera un número de casoo de incidente único, ofrece instrucciones adicionales sobre cómo proceder (hipervínculos a páginas FAQ, tal vez) uofrece números telefónicos de líneas de ayuda que no están disponibles para el público en general.El segundo tipo de diseño para cosechar la retroalimentación de los usuarios cuando se utiliza un sitio Webde comercio electrónico es llevarlos a una plantilla de mensajes en blanco cuando hagan clic en Retroalimenta-ción. Algunas herramientas de creación de sitios Web nos permiten crear e insertar con facilidad un formulariode retroalimentación en nuestro sitio. Este formulario podría empezar con un encabezado que diga “Retroalimen-tación de la empresa X” y después “Puede usar el siguiente formulario para enviar sugerencias, comentarios ypreguntas sobre el sitio X a nuestro equipo de Servicio al cliente”.Los campos pueden incluir Primer nombre, Apellido paterno, Dirección de correo electrónico, Asunto (uncampo que provee un menú desplegable con las selecciones de productos o servicios de la empresa y pide alusuario que “Por favor seleccione una opción”), una sección “Escriba aquí su mensaje:” (un espacio libre en elformulario en donde los usuarios pueden escribir su mensaje) y los botones estándar Enviar y Borrar al finaldel formulario. Este tipo de formulario permite al analista asegurar que los datos del usuario ya tengan el for-mato correcto para almacenarlos en una base de datos. En consecuencia, los datos introducidos en el formulariode retroalimentación son más fáciles de analizar teniendo todo en cuenta.Por ende, el analista hace algo más que sólo diseñar una respuesta a un correo electrónico individual. Elanalista ayuda a la organización a capturar, almacenar, procesar y analizar la valiosa información de los clientesde una manera que sea más probable que la empresa pueda detectar las tendencias importantes en la respuesta alcliente, en vez de sólo reaccionar a las consultas individuales.Fácil navegación para los sitios Web de comercio electrónicoMuchos autores hablan de lo que se conoce como “navegación intuitiva” para los sitios Web de comercio elec-trónico. Los usuarios necesitan saber cómo navegar en el sitio sin tener que aprender a usar una nueva interfaz oexplorar cada centímetro del sitio Web para poder encontrar lo que desean. El estándar para este tipo de metodo-logía de navegación se conoce como navegación de un solo clic.Hay cuatro maneras de diseñar una navegación sencilla de un solo clic para un sitio de comercio electrónico:1) crear un menú con rollover, 2) crear una colección de vínculos jerárquicos de manera que la página de iniciose convierta en una descripción de los encabezados de los temas clave asociados con el sitio Web, 3) colocar unmapa del sitio en la página de inicio y enfatizar el vínculo a éste (también se debe colocar en todas las demáspáginas del sitio) y 4) colocar una barra de navegación en cada página interna (por lo general en la parte superioro izquierda de la página) que repita las categorías utilizadas en la pantalla de entrada.www.xlibros.com
466 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOMENÚS CON ROLLOVER Es posible crear un menú (o botón) con rollover mediante hojas de estilo en cascada conJavaScript y divisiones de HTML. El menú con rollover aparece cuando el cliente que usa el sitio Web desplazael cursor sobre un vínculo.VÍNCULOS JERÁRQUICOS Crear una descripción del contenido del sitio por medio de la presentación de unatabla de contenido en la página de inicio es otra manera de agilizar la navegación del sitio. Sin embargo,este diseño impone varias restricciones sobre la creatividad del diseñador, y algunas veces el solo hechode presentar una lista de temas no transmite al usuario de manera adecuada la misión estratégica de laorganización.MAPA DEL SITIO Diseñar y después mostrar de manera prominente el vínculo a un mapa del sitio es una terceraforma de mejorar la eficiencia en la navegación. Recuerde incluir el vínculo al mapa del sitio en la página deinicio y en todas las demás páginas también.O P O R T U N I D A D D E C O N S U L T O R Í A 1 4 . 6Al correr en un maratón, es conveniente saber hacia dónde se dirigeMarathon Vitamin Shops tuvo éxito al lanzar su sitio Web. Losdesarrolladores Web pusieron todo el catálogo completo en línea eincluyeron una variedad de máscaras (o personas, como se les co-noce en el navegador Firefox) para que todos los tipos de clientesdisfrutaran el sitio Web (vea Oportunidades de consultoría 1.1 y12.3 para obtener más detalles).Los analistas se van a reunir con el propietario Bill Berry yalgunos empleados para evaluar la retroalimentación de los clientesasí como dar a conocer sus propias reacciones al nuevo sitio Web.La reunión se realizará en una sala de conferencias extensa, dondetienen una computadora con acceso a Internet y un proyector. Mien-tras se sientan a la mesa, se proyecta la pantalla de entrada para elsitio Web en la parte frontal de la sala. “El sitio Web atrajo muchaatención, pero queremos dar a los clientes incluso más para que si-gan volviendo”, dice Bill, señalando la pantalla.Bill continúa: “No es que vayamos a cerrar nuestras tiendas ninada por el estilo. De hecho, es justo lo contrario. Cuando los clien-tes se enteran de que estamos en la Web, están impacientes por lo-calizar la tienda en su comunidad. Desean poder entrar en unatienda y hablar con un experto capacitado en vez de comprar todopor Internet. Necesitamos decirle a la gente cómo llegar ahí.”.“Creemos que podemos mejorar el sitio al agregar mejoras ycaracterísticas especiales”, dice Al Falfa, miembro del equipo desistemas que diseñó e implementó originalmente el sitio Web de co-mercio electrónico.“Sí”, dice Ginger Rute, uno de los otros miembros del equipode desarrollo de sistemas, mientras asiente con la cabeza. “La uni-versidad usa una herramienta de creación de mapas de MapQuest yHome Depot usa mapas de Microsoft”.Vita Ming, otro miembro del equipo original de desarrollo desistemas, dice con entusiasmo: “Sabemos de un par de buenos ser-vicios de tableros de mensajes y salas de chat que podemos integraren nuestro sitio Web. Creemos que pueden mejorar la pegajosidaddel sitio; las personas permanecerán más tiempo en el sitio y tam-bién querrán regresar”.“Es una excelente idea”, dice Jin Singh, uno de los empleadoscon conocimiento técnico de Marathon. “Podemos dejar que losclientes hablen entre sí y se cuenten sobre algún producto que lesgustó, por ejemplo. Podríamos incluso dejar que inicien sus pro-pios blogs.Vita continúa mientras se mueve hacia el teclado de su compu-tadora y dice: “Déjame enseñarte algunos buenos sitios”. Mientrasescribe el primer URL, el grupo ve el sitio proyectado. “Utilizansistemas de chat de iChat y Multicity.com”, continúa.“Los clientes también necesitan buscar más información sobreun producto o fabricante”, agrega Al. “Vamos a facilitarles esteproceso. Veamos www.cincinnati.com como un ejemplo. Ellos uti-lizan Google para buscar la información”.Después de escuchar atentamente, Bill habla: “La informaciónmédica también podría ser útil”, dice. He observado que www.me-dpool.com tiene noticias médicas de acquiremedia. En el gimnasioal que voy he visto personas en las caminadoras observando loscanales financieros mientras hacen ejercicio”.“Ya que estamos en eso, ¿por qué no agregamos noticias einformación financiera al sitio Web?”, pregunta Ginger. “He vistoque una empresa llamada Moreover.com aparece con frecuenciacomo proveedor”.Piense en la conversación entre el equipo de desarrollo desistemas y las personas de las tiendas Maraton Vitamin Shops. Al-gunas de las sugerencias para mejorar implican aprovechar losservicios gratuitos; otros requieren pagos que varían de $1,000 a$5,000 al año. Aunque algunas eran buenas ideas, tal vez otras nosean prácticas o viables. Quizás algunas de las ideas simplementeno tengan sentido para la empresa.Para cada uno de los siguientes puntos, revise lo que sabeacerca de la misión y las actividades de negocios de Marathon Vi-tamin Shops. Después haga una recomendación en relación concada una de las opciones que han elegido los analistas y clientes, ydefiéndala: Aplicación web híbrida (mashup) con Google Maps. Salas de chat y tableros de mensajes. Blogs. Motores de búsqueda. Información médica. Fuentes de noticias e información de los mercadosfinancieros.www.xlibros.com
CAPÍTULO 14 • INTERACCIÓN HUMANO-COMPUTADORA 467BARRA DE NAVEGACIÓN Por último, puede diseñar barras de navegación que se muestren de manera consistenteen la página de inicio, así como en la parte superior y en la parte izquierda de todas las demás páginas queconforman el sitio. Una vez establecidas (durante la fase de requerimientos de información) las categorías másútiles y más usadas (por lo general categorías como “Nuestra empresa”, “Nuestros productos”, “Compre ahora”,“Contacto”, “Mapa del sitio” y “Buscar”), recuerde incluirlas en todas las páginas.OTRAS OPCIONES DE NAVEGACIÓN Incluir una función de búsqueda es otra opción. Incluya el agregar un motorde búsqueda tal como Google a su sitio. Las funciones simples de búsqueda funcionan bien para sitios pequeñosy manejables, pero a medida que éstos crecen, se requieren funciones de búsqueda avanzadas que incluyen lógicabooleana (que veremos más adelante en este capítulo).También es importante crear flexibilidad en la forma en que los usuarios navegan por la Web. Un diseña-dor experto de sitios Web trataría de incorporar muchas formas de buscar información sobre un tema especí-fico. En la figura 14.18 se muestra una página Web de DinoTech. Por ejemplo, un usuario interesado en unacarrera profesional internacional de TI puede buscar información del sitio Web de DinoTech de tres manerasA T R A C T I V O D E L A M A CLos megamotores de búsqueda —que obtienen resultados de varios motores de búsqueda, agrupan los resultados ylos muestran de una manera más útil que cualquier motor de búsqueda individual— han existido desde hace buentiempo. Hay una aplicación única en la plataforma Mac que va un paso más allá.Esa aplicación es DEVONagent, un paquete de software que utiliza motores de búsqueda generales y especiali-zados para obtener resultados, y después ofrece al usuario la opción de ver esos resultados en un mapa de temasgráfico. Otra opción es ver los resultados en una lista clasificada por relevancia.Los analistas encontrarán que DEVONagent es útil si comprenden y hacen uso del mapa de temas gráfico. Tambiénes útil si se requieren búsquedas complejas (es decir, si las búsquedas estándar no profundizan lo suficiente para encon-trar la información exacta que se necesita). Y también se puede usar en las búsquedas que se necesitan repetir con fre-cuencia.FIGURA 14.MACDEVONagent de DEVONtechnologies.www.xlibros.com
468 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOdistintas. Si les interesa trabajar en Argentina, pueden trabajar en la bandera de Argentina, hacer clic en elnombre del país o en el mapa que representa a Argentina.Es conveniente diseñar un sitio Web con navegación para los usuarios con distinto procesamiento cognosci-tivo o con distintos intereses. Es incluso posible que el mismo usuario pueda usar los tres métodos antes mencio-nados en distintos momentos. Todo ello aumenta la usabilidad de un sitio Web.Sin embargo, la principal prioridad en la navegación es que, sin importar lo que haga, debe facilitar lo másque pueda a los usuarios el proceso de regresar a una página anterior y que también puedan regresar con relativafacilidad al lugar en donde entraron al sitio de su cliente. Su principal preocupación es mantener a los consumi-dores en el sitio Web. Entre más tiempo estén en el sitio, mayor será la probabilidad de que compren algo. Porlo tanto se debe asegurar que, si los usuarios navegan a un vínculo en el sitio Web de su cliente, puedan hallar sucamino de vuelta. Al hacer estas cosas asegurará la pegajosidad del sitio Web. No es conveniente crear barreraspara el consumidor que desea regresar al sitio Web de su cliente.APLICACIONES WEB HÍBRIDAS (MASHUPS)Una interfaz de programación de aplicaciones (API) es un conjunto de pequeños programas y protocolos que seutilizan como bloques de construcción para la creación de aplicaciones de software. Cuando dos o más APIse utilizan en conjunto, forman una aplicación híbrida; muchas son de código fuente abierto, por lo que los de-sarrolladores pueden usar una API de un sitio como Google Maps y combinarla con una API que contenga otrosdatos para producir una aplicación web completamente nueva.Por ejemplo, Music Anchor permite buscar música por género, título o autor, desplegar listas de artistas porgénero y canciones por artistas, para reproducir los videos correspondientes. Esta aplicación web híbrida logratodo esto combinando API de Last.fm, MusicBrainz, Amazon, eBay y YouTube.Tal vez una empresa grande con muchos puntos de venta de menudeo en una región quiera facilitar a susclientes el proceso de encontrar sus tiendas. Podría ser conveniente que contrataran una empresa como Blipstar,que provee un servicio para permitir que las empresas publiquen información sobre sus tiendas de menudeo.Blipstar las geocodifica y las coloca en un mapa de Google. Después la empresa coloca un vínculo a esta infor-mación en su propio sitio Web, de manera que los clientes sólo tienen que introducir su código postal y dejar quela aplicación híbrida muestre la ubicación de la tienda de menudeo más cercana.Estas aplicaciones se están convirtiendo en una nueva forma de presentar información. Es muy probable queaparezcan pronto muchas aplicaciones web híbridas muy útiles. Puede buscarlas en www.programmableweb.com.DISEÑO DE CONSULTASCuando los usuarios hacen preguntas o se comunican con la base de datos, se dice que la consultan. Hay seistipos distintos de consultas que son las más comunes. Si usted pone mucha atención al diseño de las consultas,FIGURA 14.18Un ejemplo de una página Webque permite a los usuarios navegara la página deseada en tresformas.www.xlibros.com
CAPÍTULO 14 • INTERACCIÓN HUMANO-COMPUTADORA 469podrá ayudar a reducir el tiempo que invierten los usuarios en consultar la base de datos, los ayudará a encontrarlos datos que desean y obtendrán una experiencia más cómoda en general.Tipos de consultasLas preguntas que planteamos con respecto a los datos de nuestra base de datos se conocen como consultas. Hayseis tipos básicos de consultas. Cada consulta involucra a tres elementos: una entidad, un atributo y un valor. Encada caso se proporcionan dos de estos elementos y la intención de la consulta es encontrar el elemento restante.Usaremos la figura 14.19 para ilustrar todos los ejemplos de las consultas.TIPO DE CONSULTA 1 Se proporciona la entidad y uno de los atributos de ésta. El propósito de la consulta esencontrar el valor. La consulta se puede expresar de la siguiente manera:¿Cuál es el valor de un atributo especificado para una entidad específica?Algunas veces es más conveniente usar la notación para formular la consulta. Esta consulta se puede escribir así:V d (E, A)donde V representa el valor, E la entidad y A el atributo; se proporcionan las variables entre paréntesis.La pregunta¿Cuánto ganó el empleado número 73712 en el año 2009?se puede declarar de manera más específica como¿Cuál es el valor del atributo ANIO-2009 para la entidad NUMERO EMPLEADO 73712?Se encontrará el registro que contiene al empleado número 73712 y la respuesta a la consulta será $47,100.TIPO DE CONSULTA 2 La intención del segundo tipo de consulta es encontrar una entidad o unas entidades cuandose proporciona un atributo y un valor. El tipo de consulta 2 se puede establecer de la siguiente manera:¿Qué entidad tiene un valor específico para un atributo en particular?Como los valores también pueden ser numéricos, es posible buscar un valor igual a, mayor que, menor que, noigual a, mayor o igual a, y así en lo sucesivo. El siguiente es un ejemplo de este tipo de consulta:¿Qué empleado(s) obtuvo más de $50,000 en 2009?La notación para el tipo de consulta 2 esE d (V, A)NOMBREEMPLEADO DEPARTAMENTO E/R ANIO-2006 ANIO-2007 ANIO-2008 ANIO-2009NUMEROEMPLEADOHISTORIAL-INGRESOS72845 Waters Ventas externas S 48,960 51,400 49,050 52,90072888 Dryne Ventas externas S 42,200 44,700 48,020 50,58073712 Fawcett Distribución H 43,500 45,500 46,780 47,10080345 Well, Jr. Marketing S 65,000 71,000 75,000 78,00084672 Piper Mantenimiento H 40,560 42,340 43,520 44,91089760 Acquia Contabilidad H 38,755 40,040 41,380 42,540Los añosson losatributos.Los salarios sonlos valores.Los números deempleados sonlas entidades.FIGURA 14.19Es posible realizar seis tiposbásicos de consultas en una tablaque contiene entidades, atributosy valores.www.xlibros.com
470 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOEn este caso tres empleados ganaron más de $50,000, por lo que la respuesta será un listado de estos tres númerosde empleado: 72845, 72888 y 80345.TIPO DE CONSULTA 3 El propósito de este tipo de consulta es determinar qué atributos se ajustan a la descripciónprovista cuando se proporcionan la entidad y el valor. El tipo de consulta 3 se puede establecer de la siguientemanera:¿Qué atributo(s) tiene un valor especificado para una entidad en particular?Esta consulta es útil cuando muchos atributos similares tienen la misma propiedad. El siguiente ejemplo tieneatributos similares (años específicos) que contienen los salarios anuales para los empleados de la empresa:¿En qué años ganó el empleado número 72845 más de $50,000?o, dicho en forma más precisa,¿Qué atributos {ANIO-2006, ANIO-2007, ANIO-2008, ANIO-2009} tienen un valor [gt] 50,000 para laentidad NUMERO-EMPLEADO = 72485?en donde la lista opcional entre llaves ({ }) es el conjunto de atributos elegibles.La notación para el tipo de consulta 3 esA d (V, E)En este ejemplo, Waters (número de empleado 72845) hizo más de $50,000 durante dos años. Por lo tanto, la res-puesta será el año 2007 y el año 2009. El tipo de consulta 3 es más raro que los dos tipos anteriores debido a querequiere tener atributos similares que exhiban las mismas propiedades.TIPO DE CONSULTA 4 El tipo de consulta 4 es similar al tipo de consulta 1. La diferencia es que se desean losvalores de todos los atributos. La consulta 4 se puede expresar de la siguiente manera:Liste todos los valores para todos los atributos de una entidad específica.Un ejemplo del tipo de consulta 4 es:Liste todos los detalles en el archivo del historial de ingresos para el empleado número 72888.La notación para el tipo de consulta 4 estodos los V d (E, todos los A)La respuesta para esta consulta será todo el registro completo para el empleado llamado Dryne (número de em-pleado 72888).TIPO DE CONSULTA 5 El quinto tipo de consulta es otra consulta global, pero es similar en forma al tipo deconsulta 2. Podemos establecerlo de la siguiente manera:Liste todas las entidades que tengan un valor específico para todos los atributos.El siguiente es un ejemplo del tipo de consulta 5:Liste a todos los empleados cuyos ingresos sean superiores a $50,000 en cualquiera de los años disponibles.La notación para el tipo de consulta 5 estodas los E d (V, todos los A)La respuesta a esta consulta será 72845, 72888 y 80345.TIPO DE CONSULTA 6 El sexto tipo de consulta es similar al tipo de consulta 3. La diferencia es que el tipode consulta 6 solicita un listado de los atributos para todas las entidades, en vez de hacerlo para una entidadespecífica. Podemos establecer el tipo de consulta 6 de la siguiente manera:Liste todos los atributos que tengan un valor especificado para todas las entidades.El siguiente es un ejemplo del tipo de consulta 6:Liste todos los años en que los ingresos hayan sido superiores a $40,000 para todos los empelados de laempresa.La notación para el tipo de consulta 6 estodos los A d (V, todas las E)www.xlibros.com
CAPÍTULO 14 • INTERACCIÓN HUMANO-COMPUTADORA 471La respuesta será ANIO-2007, ANIO-2008 y ANIO-2009. Al igual que con el tipo de consulta 3, el tipo deconsulta 6 no se utiliza tanto como los demás tipos.CREACIÓN DE CONSULTAS MÁS COMPLEJAS Los seis tipos anteriores de consultas son sólo bloques deconstrucción para consultas más complejas. Se pueden formar expresiones, conocidas como expresionesbooleanas, para las consultas. Un ejemplo de una expresión booleana es:Liste todos los empleados que tengan códigos postales mayores o iguales a 60001 y menores que 70000, yque hayan pedido más de $500 de nuestros catálogos o hayan hecho por lo menos cinco pedidos en elúltimo año.Una dificultad con este enunciado es determinar qué operador (por ejemplo, AND [Y]) pertenece a cuál con-dición; también es difícil determinar la secuencia en la que se deben llevar a cabo las partes de la expresión. Losiguiente puede ser de utilidad para aclarar este problema:LISTE A TODOS LOS CLIENTES QUE TENGAN (CODIGO-POSTAL GE 60001 AND CODIGO-POSTAL LT 70000) AND (MONTO-PEDIDO GT 500 OR NUMERO-PEDIDOS GE 5)Ahora se elimina parte de la confusión. La primera mejora es que los operadores se expresan con más cla-ridad como GE (mayor o igual que), GT (menor que) y LT (menor que) en vez de usar frases en español, como“al menos”. En segundo lugar, los atributos reciben distintos nombres, como MONTO-PEDIDO y NUMERO-PEDIDOS. En el primer enunciado se hizo referencia a estos atributos como “hayan pedido” y “hayan hecho”.Por último, se utilizan paréntesis para indicar el orden en el que se va a realizar la lógica. Lo que esté entre pa-réntesis se realiza primero.Por lo general las operaciones se realizan en un orden predeterminado de precedencia. Generalmente lasoperaciones aritméticas se realizan primero (exponenciación, después multiplicación o división y luego suma oresta). A continuación se realizan las operaciones de comparación. Estas operaciones son GT (mayor que), LT(menor que), etcétera. Por último se realizan las operaciones booleanas (primero AND [Y] y después OR [O]).Dentro del mismo nivel el orden va generalmente de izquierda a derecha. La precedencia se sintetiza en la fi-gura 14.20.Métodos de consultaDos métodos de consulta populares son las consultas mediante ejemplos y el lenguaje de consulta estructurado.CONSULTA MEDIANTE EJEMPLOS La consulta mediante ejemplo (QBE) es un método simple pero potente paraimplementar consultas en los sistemas de bases de datos, como Microsoft Access. Los campos de la base dedatos se seleccionan y muestran en una cuadrícula, y los valores solicitados en la consulta se introducen en elárea del campo o debajo de éste. La consulta debe ser capaz de seleccionar ambas filas de la tabla que coincidancon las condiciones, así como las columnas específicas (campos). Es posible establecer condiciones complejaspara seleccionar registros y el usuario puede especificar con facilidad las columnas que desea ordenar. La figura14.21 es un ejemplo de una consulta mediante el uso de Microsoft Access. La pantalla de diseño de la consulta sedivide en dos porciones. La porción superior contiene las tablas seleccionadas para la consulta y sus relaciones,y la porción inferior contiene la cuadrícula de selección de la consulta. Los campos de las tablas de la base dedatos se arrastran a la cuadrícula.Las primeras dos filas contienen el campo y la tabla en donde se encuentra ese campo. La siguiente filacontiene información sobre el orden. En este ejemplo los resultados se ordenarán por NOMBRE CLIENTE(CUSTOMER NAME). Una marca de verificación en el cuadro Mostrar (Show) (cuarta fila hacia abajo) indicaque el campo se debe mostrar en los resultados. Cabe mencionar que se seleccionan los elementos NUMEROTipoOperadores aritméticos 1 * *2 * /3 + –Operadores de comparación 4 GT LTEQ NEGE LEOperadores booleanos 5 AND6 ORNivel Símbolo FIGURA 14.20Los operadores aritméticos, decomparación y booleanos seprocesan en un orden jerárquicode precedencia, a menos que seutilicen paréntesis.www.xlibros.com
472 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOCLIENTE (CUSTOMER NUMBER), NOMBRE CLIENTE (CUSTOMER NAME) y SIG-NIFICADO CODIGO ESTADO (STATUS CODE MEANING) para la pantalla resultante(también se muestran otros campos, pero no aparecen en la pantalla). Observe que CODIGOESTADO CUENTA (ACCOUNT STATUS CODE) y CODIGO TIPO CUENTA (ACCOUNTTYPE CODE) no están marcados y por lo tanto no estarán en los resultados finales. En las filasde criterios hay un 1 en el CODIGO ESTADO CUENTA (para indicar un registro activo); ade-más hay una C y una D (para seleccionar un Cliente general o un Cliente de descuento) en lascolumnas CODIGO TIPO CUENTA. Dos condiciones en la misma fila indican una condiciónO P O R T U N I D A D D E C O N S U L T O R Í A 1 4 . 7¡Eh, mírame! (Repetición)Usted acaba de recibir una llamada para que dé otro vistazo alsistema de Merman’s Costume Rentals. He aquí parte de la base dedatos creada para Annie Oaklea de Merman’s (con quien trabajó enlas Oportunidades de consultoría 7.1 y 8.1). La base de datos con-tiene información como el costo de la renta, la fecha en que salió,la fecha de entrega y el número de días que se ha rentado el disfrazdesde el inicio del año (DIAS RENTA AAF) (vea la figura 14.C1).Después de analizar un día común de Annie en el negocio derenta de disfraces, usted descubre que hay varias solicitudes que elladebe obtener de la base de datos para poder tomar decisiones sobrecuándo reemplazar los disfraces de uso frecuente, o incluso cuándocomprar más disfraces de un tipo específico. Ella también necesitarecordar que, por ejemplo, debe seguir agradando a los clientes paraquienes no tuvo disponible algún disfraz, o cuándo llamar a losclientes cuyo plazo de entrega del disfraz se haya vencido, etcétera.Formule varias consultas que le ayuden a obtener la informa-ción que necesita de la base de datos. (Sugerencia: Haga todas lassuposiciones necesarias sobre los tipos de información que necesitapara tomar las decisiones y use todos los tipos de consultas quepueda de los que vimos en este capítulo). Describa en un párrafoqué tan distintas serían las consultas de Annie si trabajara con unsistema basado en Web o con hipervínculos.SOLICITUDESRECHAZADASTIPO DEDISFRAZDIASRENTAAAFFECHAVENCI-MIENTOCOSTONUMERODISFRAZNUMEROTRAJERENTA-DISFRACES0003 Lady MacBeth F, SM 01 Azul 15.00 10/15 11/30 150 Estándar 21342 Bear F, MED 01 Café obscuro 12.50 10/24 11/09 26 Estándar 01344 Bear F, MED 02 Café obscuro 12.50 10/24 11/09 115 Estándar 01347 Bear F, LG 01 Negro 12.50 10/24 11/09 22 Estándar 01348 Bear F, LG 02 Negro 12.50 11/01 11/08 10 Estándar 01400 Goldilocks F, MED 01 Azul claro 7.00 10/24 11/09 140 Estándar 01402 Goldilocks F, MED 02 Azul claro 7.00 10/28 11/09 10 Estándar 01852 Hamlet M, MED 01 Verde obscuro 15.00 11/02 11/23 115 Estándar 31853 Ophelia F, SM 01 Azul claro 15.00 11/02 11/23 22 Estándar 04715 Prince M, LG 01 Blanco/morado 10.00 11/04 11/21 145 Estándar 54730 Frog M, SM 01 Verde 7.00 11/04 11/21 175 Estándar 27822 Jester M, MED 01 Multi 7.50 11/10 12/08 12 Estándar 07824 Jester M, MED 02 Multi 7.50 11/09 11/15 10 Estándar 07823 Executioner M, LG 01 Negro 7.00 11/19 12/05 21 Estándar 08645 Mr. Spock N, LG 01 Naranja 18.00 09/07 09/12 150 Moderno 49000 Pantomime F, LG 01 Rojo 7.00 08/25 09/15 56 Estándar 09001 Pantomime M, MED 01 Azul 7.00 08/25 09/15 72 Estándar 09121 Juggler M, MED 01 Multi 7.00 11/05 11/19 14 EstándarEstándar09156 Napoleon M, SM 01 Azul/blanco 15.00 10/26 11/23 56 1COLORFECHASALIDADESCRIPCIONFIGURA 14.C1Una porción de la base de datos de la tienda Merman’s Costume Rental.www.xlibros.com
CAPÍTULO 14 • INTERACCIÓN HUMANO-COMPUTADORA 473AND, y dos condiciones en distintas filas representan una condición OR. Esta consulta especifica que el usuariodebe seleccionar un Cliente activo (Active Customer) y un Cliente general (General Client) o de descuento (Dis-count Customer).Los resultados de una consulta se muestran en una tabla como en la figura 14.22. Cabe mencionar queno aparecen CODIGO ESTADO CUENTA (ACCOUNT STATUS CODE) ni CODIGO TIPO CUENTA (AC-COUNT TYPE CODE). No están marcados y se incluyen en la consulta sólo para fines de selección. Como al-ternativa se muestran los significados del código, que son más útiles para el usuario. Los nombres de los clientesestán en secuencia por orden alfabético.LENGUAJE DE CONSULTA ESTRUCTURADO El lenguaje de consulta estructurado (SQL) es otra manera popularde implementar consultas. Utiliza una serie de palabras y comandos para seleccionar las filas y columnas quedeben aparecer en la tabla resultante. La figura 14.23 contiene código de SQL. La palabra clave SELECTDISTINCTROW determina las filas que se van a seleccionar. La palabra clave WHERE especifica la condiciónque debe usar el NOMBRE CLIENTE para seleccionar los datos introducidos en el parámetro LIKE.FIGURA 14.21Consulta mediante ejemplos enMicrosoft Access.FIGURA 14.22Una consulta mediante ejemplopara ESTADO CLIENTE(CUSTOMER STATUS) produceestos resultados.www.xlibros.com
474 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOSELECT DISTINCTROWCliente.[Numero cliente],Cliente.[Nombre cliente],Cliente.Ciudad,Cliente.TelefonoFROM ClienteWHERE (((Cliente.[Nombre cliente])Like ([Escriba un Nombre de cliente parcial] & "*")));FIGURA 14.23Lenguaje de consulta estructurado(SQL) para la consulta delparámetro NOMBRE CLIENTE.RESUMENPALABRAS CLAVE Y FRASESajusteaplicación web híbrida (mashup)asistentebarra de navegaciónconsideraciones cognoscitivas de HCIconsideraciones físicas de la HCIconsideraciones psicológicas de la HCIconsultaconsulta mediante ejemplocuadro de diálogodesempeñodiscapacidades y diseñointerfaces de llenado de formularios (formularios de entrada/salida)interfaz de lenguaje de comandosinterfaz de lenguaje naturalinterfaz de llenado de formulario basado en Webinterfaz de preguntas y respuestasinterfaz de programación de aplicaciones (API)interfaz gráfica de usuario (GUI)lenguaje de consulta estructurado (SQL)mapa del sitiomenúmenú con rollovermenú desplegablemenús anidadosmodelo de aceptación de la tecnología (TAM)navegación de un solo clicnavegación intuitivaoperadores booleanospantalla sensible al tactopantalla táctilpegajosidadplantillaplumillareconocimiento y síntesis de vozretroalimentaciónretroalimentación para los usuariossistema continuo de voztareacapacidad de usabilidadExaminamos la interacción humano-computadora (HCI), unavariedad de interfaces, el diseño de la interfaz de usuario, el diseñode la retroalimentación del usuario y el diseño de la retroalimen-tación y navegación de sitios Web de comercio electrónico. Nosenfocamos en comprender la HCI para asegurar la funcionalidady usabilidad de los sistemas computacionales que diseñamos.Cuando los analistas crean un ajuste apropiado entre los elemen-tos de la HCI del humano, la computadora y la tarea, se produceuna mejora en el rendimiento y un bienestar psicológico y físicodel individuo en general.Los diseños se enfocan en desarrollar un ajuste apropiado.Los analistas pueden usar el TAM (Modelo de aceptación de latecnología) para organizar su modo de pensar acerca de si losusuarios aceptarán la tecnología y la utilizarán en un momentodado, mediante un análisis de la utilidad y facilidad de uso per-cibidas desde la perspectiva del usuario.La usabilidad identifica lo que funciona y no funciona para losusuarios. Las consideraciones físicas del diseño de la HCI incluyenvisión, oído y tacto. Hay que tener en cuenta las discapacidades ylimitaciones físicas durante el diseño de tareas e interfaces. Haygran variedad de interfaces de usuario y dispositivos de salida.Algunas interfaces se adaptan muy bien a los usuarios inexpertos,mientras que otras se adaptan mejor a los usuarios experimentados.Combine interfaces como menús desplegables e interfaces gráficaspara aumentar la efectividad. La Web ha impuesto nuevos retospara los diseñadores, ya que no conocen al usuario.La necesidad que tienen los usuarios de retroalimentacióndel sistema es también una consideración importante. La retroa-limentación es casi siempre visual, siendo el texto, los gráficosy los iconos los tipos más comunes de retroalimentación visual.La retroalimentación de audio también puede ser efectiva.Para mejorar la funcionalidad de los sitios Web hay queobtener retroalimentación del cliente por medio de botones deretroalimentación automática por correo electrónico o mediantela inclusión de formularios en blanco en el sitio Web. Cuatroestrategias importantes de diseño de navegación mejoran la pe-gajosidad de los sitios Web de comercio electrónico: 1) menúscon rollover, 2) visualizaciones jerárquicas de vínculos en lapantalla de entrada; 3) mapas del sitio y 4) barras de navegaciónque ofrecen la navegación con un solo clic.Las consultas están diseñadas para permitir a los usuariosextraer datos significativos de la base de datos. Hay seis tiposbásicos de consultas que se pueden combinar mediante el uso delógica booleana para formar consultas más complejas. La con-sulta mediante ejemplo y el SQL son dos formas comunes deconsultar sistemas de bases de datos.www.xlibros.com
CAPÍTULO 14 • INTERACCIÓN HUMANO-COMPUTADORA 475E X P E R I E N C I A D E H Y P E R C A S E ® 1 4“ No tengo problema en usar un ratón o cualquier otro roedorque se me atraviese. Pero en realidad, lo que Snowden necesita eslo que trato de hacer. Sin embargo, todo es distinto. He visto perso-nas aquí que han hecho de todo por evitar usar una computadora;otras preferirían no hablar con un humano. De hecho, estarían tanfelices como un cachorro masticando un zapato si pudieran usar ellenguaje de comandos para interactuar. La mayoría de los compa-ñeros que tenemos aquí están abiertos a nuevas cosas. De lo contra-rio no estarían en MRE. Nos enorgullecemos de nuestra creatividad.Lo anoté para una reunión con personal del grupo de capacitación,incluyendo a Tom Ketchem, Melissa Smith y Kathy Blandford.Incluí a Ashley Heatherford, quien es nuestra consultora experta enusabilidad. Melanie Corazón podría estar también en la junta, yaque quiere ver si lo que usted está haciendo se puede aplicar a lossistemas de comercio electrónico. Tal vez Snowden asista también,si tiene tiempo. Todos tienen mucha curiosidad de ver el tipo deinterfaz que usted va a sugerirles para el nuevo proyecto del sistemade informes”.Preguntas de HYPERCASE1. Escriba una breve propuesta en la que describa el tipo deinterfaz de usuario que sería apropiada para los usuarios delsistema de informes de proyectos que están en el grupo decapacitación. Incluya las razones de su decisión.2. Diseñe una interfaz de usuario mediante el uso de unaherramienta CASE como Visible Analyst, un paquete desoftware tal como Microsoft Access o formularios de diseñoen papel para el grupo de capacitación. ¿Cuáles son lascaracterísticas clave que tienen como fin satisfacer lasnecesidades de las personas del grupo de capacitación?3. Escriba una breve propuesta en la que describa el tipo deinterfaz de usuario que sería apropiada para los usuariosde los sistemas de comercio electrónico B2B que MelanieCorazón describió en su entrevista. Incluya las razones de sudecisión.4. Diseñe una interfaz de usuario mediante una herramientaCASE como Visible Analyst, un paquete de software comoMicrosoft Access o formularios de diseño en papel para losusuarios de los sistemas de comercio electrónico B2B quedescribió Melanie Corazón. ¿Cuáles son las característicasclave que lidian con las necesidades de las personas queutilizan sistemas de comercio electrónico B2B en la Web?5. Haga una lista con viñetas de las cuestiones de usabilidadque podría Ashley tener con las interfaces que diseñó.FIGURA 14.HC1En HyperCase podrá ver cómo los usuarios procesan información para poder crear unainterfaz de usuario más efectiva.www.xlibros.com
476 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOPREGUNTAS DE REPASO1. Defina HCI.2. Explique cómo el ajuste entre los elementos de HCI del humano, la computadora y las tareas adesempeñar conducen a un buen desempeño y bienestar.3. ¿Cuáles son los componentes del término desempeño en el contexto de la HCI?4. ¿Qué significa la palabra bienestar cuando se utiliza en una metodología de la HCI?5. ¿Cuáles son las dos variables del Modelo de aceptación de la tecnología (TAM)?6. Haga una lista de cinco de las once heurísticas de usabilidad para juzgar la usabilidad de los sistemascomputacionales y los sitios Web de comercio electrónico proporcionados por Nielsen y otros.7. Describa algunas de las formas en que una tabla dinámica permite a un usuario ordenar datos.8. Mencione tres consideraciones físicas de las que el diseño de HCI se ocupa.9. Mencione tres formas en que los analistas pueden mejorar el diseño de tareas o de interfaces paraayudar, en forma respectiva, a una persona con discapacidad visual, auditiva o móvil.10. ¿Cuáles son los cinco objetivos para diseñar interfaces de usuario?11. Defina las interfaces de lenguaje natural. ¿Cuál es su mayor desventaja?12. Explique lo que significa interfaces de pregunta y respuesta. ¿A qué tipo de usuarios están mejoracostumbrados?13. Describa cómo utilizan los usuarios los menús en pantalla.14. ¿Qué es un menú anidado? ¿Cuáles son sus ventajas?15. Defina los formularios de entrada/salida en pantalla. ¿Cuál es su principal ventaja?16. ¿Cuáles son las ventajas de los formularios de llenado basados en Web?17. ¿Cuáles son las desventajas de las interfaces de formularios de llenado basados en Web?18. Explique lo que son las interfaces de lenguaje de comandos. ¿A qué tipo de usuarios se adaptan mejor?19. Defina las interfaces gráficas de usuario. ¿Cuál es la dificultad clave que presentan para losprogramadores?20. ¿Para qué tipo de usuario es una GUI especialmente efectiva?21. ¿Cuáles son los tres lineamientos para diseñar un buen diálogo en pantalla?22. ¿Cuáles son las funciones de los iconos, gráficos y color para proporcionar retroalimentación?23. Mencione ocho formas para lograr el objetivo de la acción mínima del operador al diseñar unainterfaz de usuario.24. Mencione cinco estándares que puedan ayudar a evaluar interfaces de usuario.25. ¿Cuáles son las siete situaciones que requieren retroalimentación para los usuarios?26. ¿Cuál es una manera aceptable de decir al usuario que se aceptó la entrada?27. Cuando se informa a un usuario que su entrada no está en el formato correcto, ¿qué retroalimentaciónadicional hay que proporcionar al mismo tiempo?28. Mencione tres formas de notificar a un usuario Web que la entrada no está en el formato correcto.29. ¿Por qué es inaceptable notificar al usuario que la entrada no es correcta sólo mediante el uso desonidos o zumbidos audibles?30. Cuando no se completa una solicitud, ¿qué retroalimentación hay que proveer al usuario?31. Describa dos tipos de diseños de sitios Web para obtener retroalimentación de los clientes.32. Mencione cuatro formas prácticas en las que un analista puede mejorar la facilidad de navegación delusuario y la pegajosidad de un sitio Web de comercio electrónico.33. ¿Qué son vínculos de hipertexto? ¿Dónde se deben usar?34. Describa qué es una aplicación web híbrida (mashup).35. Haga una lista con notación abreviada de los seis tipos de consultas básicas.PROBLEMAS1. Manu Narayan es dueño de varios hoteles de primera clase en todo el mundo, incluyendopropiedades en Manhattan, Mumbai e incluso algunos en los suburbios. Él desea asegurarse de que lainterfaz humano-computadora sea apropiada para cada cultura, pero también desea poder compartirel software entre todos los departamentos de reservaciones de sus hoteles. Diseñe una interfaz demenús anidados para un sistema de reservaciones de llegadas y partidas del hotel que se pueda usar anivel internacional. Utilice números para seleccionar cada elemento del menú. Muestre cómo luciríacada menú en una pantalla de computadora.2. Stefan Lano necesita pantallas para mostrar el inventario de instrumentos musicales en su cadena detiendas de música, que da servicio a músicos que tocan en orquestas sinfónicas de clase mundial enBasel, Suiza; Buenos Aires, Argentina; Filadelfia y Nueva York, E.U. Diseñe una interfaz de llenadode formularios para el control de inventario de los instrumentos musicales en las cuatro tiendas quese pueda usar en una pantalla de PC. Suponga que el español será el lenguaje de interfaz.3. Diseñe una interfaz de llenado de formularios basados en Web para realizar la misma tarea que en elproblema 2.a. ¿Qué dificultades encontró? Descríbalas en un párrafo.b. De los dos diseños que hizo, ¿cuál podría decir que se adapta mejor a la tarea del Sr. Lano? ¿Porqué? Mencione tres razones de su elección. ¿Cómo evaluaría su usabilidad?4. Una agencia de viajes ubicada en el Reino Unido, Euan Morton, LLC, desea que el equipo desistemas que usted dirige diseñe una interfaz de lenguaje de comandos que pueda usar para reservarwww.xlibros.com
CAPÍTULO 14 • INTERACCIÓN HUMANO-COMPUTADORA 477asientos para las aerolíneas con las que su empresa tiene sólidos lazos comerciales, como British Air, RyanAir y VirginAtlantic.a. Muestre cuál sería la apariencia de la interfaz en una pantalla estándar.b. Haga una lista de los comandos necesarios para reservar un asiento de la aerolínea y anote lo que significa cadacomando.5. Una ejecutiva de Ti de nombre Felicia Finley que proviene de Jersey IT Innovators, Inc., le ha pedido que diseñe unainterfaz gráfica de usuario para un escritorio ejecutivo que le pueda ayudar en su trabajo. Use iconos para los archiveros,un bote de basura, un teléfono, etcétera. Muestre cuál sería su apariencia en la pantalla de computadora.6. Nick, famoso chef y propietario de un restaurante de Williamsburg, Nueva York, desea poder recibir unaretroalimentación clara en los sistemas que se utilizan para administrar sus diversos restaurantes de “atracción turística”.Diseñe una pantalla que provea una retroalimentación apropiada para un usuario cuyo comando no se pueda ejecutar.7. Diseñe una pantalla para un paquete de software de nómina que muestre información para indicar a Nick, del problema 6,cómo puede obtener una retroalimentación más detallada.8. Diseñe una pantalla basada en Web que muestre una manera aceptable de decir a Nick que se aceptó la entrada de su sistema.9. Diseñe un formulario de retroalimentación para los clientes del restaurante de Nick mediante el uso de un sitio Web decomercio electrónico.10. Escriba seis consultas para el archivo en el problema 1 del capítulo 13.11. Escriba seis consultas para la relación en 3NF en el problema 5 del capítulo 13.12. Diseñe una búsqueda que encuentre los potenciales competidores de una empresa como World’s Trend en la Web.Suponga que usted es el cliente.13. Busque los potenciales competidores de World’s Trend en la Web (no encontrará a la empresa World’s Trend en la Web,ya que es una compañía ficticia). Haga una lista de los que encuentre.PROYECTOS EN GRUPO1. Con los miembros de su grupo, cree un menú desplegable para una agencia de empleos que relacione los potencialescandidatos con las vacantes disponibles. Incluya una lista de teclas para seleccionar directamente las opciones del menú;utilice el formato Alt-X. El menú tiene las siguientes opciones:2. Describa en un párrafo los problemas que su grupo enfrentó al crear este menú.3. La característica de arrastrar y soltar se utiliza en las GUI y permite al usuario mover enunciados en un programa deprocesamiento de palabras. Como grupo, sugiera cómo se podría utilizar la técnica de arrastrar y soltar a su máximopotencial en las siguientes aplicaciones:a. Software de administración de proyectos (capítulo 3).b. Programa de bases de datos relacionales (capítulo 13).c. Diseñador de pantallas o formularios (capítulo 12).d. Programa de hoja de cálculo.e. Herramienta CASE para dibujar diagramas de flujo de datos (capítulo 7).f. Programa de fax (capítulo 11).g. Calendario de asistente personal digital (PDA) (capítulo 3).h. Ilustración en un paquete de dibujo.i. Herramienta CASE para desarrollar diccionarios de datos (capítulo 8).j. Programa para dibujar árboles de decisión (capítulo 9).k. Sitio Web para recolectar opiniones del consumidor sobre nuevos productos (capítulo 11).l. Organizar marcadores para sitios Web.Para cada solución que diseñe su grupo, dibuje la pantalla y muestre el movimiento mediante el uso de una flecha.4. Pida a los miembros de su grupo que soliciten una búsqueda con base en sus actividades de entretenimiento. Si haycuatro personas en su grupo, habrá que realizar cuatro búsquedas únicas. Ahora vaya y realice todas las búsquedas.Compare sus resultados. ¿Tiene la persona involucrada con la actividad una ventaja sobre las personas que saben menossobre ella? Explique.5. Analice los siguientes sitios Web de aplicaciones web híbridas y describa cómo es que cada uno de ellos agrega un valoral proveer un servicio.a. Aboutairportparking.com, www.aboutairportparking.comb. Baebo, http://baebo.francisshanahan.comc. Global Incident Map, www.globalincidentmap.com/home.phpAgregar empleado Eliminar empleadoModificar empleado Relacionar empleado con vacanteEliminar empleado Imprimir informe de vacantes disponiblesConsulta de empleados Imprimir informe de coincidencias exitosasConsulta de empleos Agregar vacanteConsulta de patrones Modificar vacanteAgregar patrón Eliminar vacanteModificar patrónwww.xlibros.com
478 PARTE IV • LOS FUNDAMENTOS DEL DISEÑOd. Hawkee Technology Social Network, www.hawkee.come. Homethinking, www.homethinking.comf. Sitios de compras en mpire, www.mpire.com/buyer/search.pageg. Streeteasy, www.streeteasy.com6. Los siguientes dos aplicaciones web híbridas tienen fines de propaganda política; sugiera otras tresque traten de modificar algo atrayendo al público.Cuidado de la salud que funciona, www.healthcarethatworks.org/maps/nycY también pruebe en NYTurf,7. Pruebe estas aplicaciones web híbridas sólo por diversión.a. La geografía de Seinfeld, www.stolasgeospatial.com/senfield.htmlb. HBO: Los Sopranos www.hbo.com/sopranos/mapc. PlotShot, www.plotshot.comd. Flickr Sudoku, http://flickrsudoku.come. Liveplasma, www.liveplasma.comBIBLIOGRAFÍA SELECCIONADAAdam, A. y D. Kreps. “Web Accessibility: A Digital Divide for Disabled People?” En Societal and Organi-zational Implications for Information Systems, IFIP Federación Internacional para el Procesamiento dela Información, Vol. 208. Editado por E. Trauth, D. Howcraft, T. Butler, B. Fitzgerald y J. DeGross, pp.217-228. Boston: Springer, 2006.Barki, H. y J. Hartwick. “Measuring User Participation, User Involvement, and User Attitude”. MIS Quar-terly, Vol. 18, Núm. 1, 1994, pp. 59-82.Berstel, J., S. C. Reghizzi, G. Roussel y P. San Pietro. “A Scalable Formal Method for Design and Automa-tic Checking of User Interfaces”. ACM Transactions on Software Engineering and Methodology, Vol.14, Núm. 2, abril de 2005, pp. 124-167.Carey, J., D. Galletta, J. Kim, D. Te’eni, B. Wildemuth y P. Zhang. “The Role of Human-Computer Interac-tion in Management Information Systems Curricula: A Call to Action”. Communications of the Asso-ciation for Information Systems, Vol. 13, 2004, pp. 357-379.Davis, F. “Perceived Usefulness, Perceived Ease of Use, and User Acceptance of Information Technology”.MIS Quarterly, Vol. 13, Núm. 3, 1989, pp. 319-340.Davis, G. B. y M. H. Olson. Management Information Systems: Conceptual Foundations, Structure, andDevelopment. Nueva York: McGraw-Hill, 1985.Galleta, D. y P. Zhang (Eds.). Human-Computer Interaction and Management Information Systems: Appli-cations. Armonk, NY: M. E. Sharpe, 2006.Greene, K. “A Better, Cheaper Multitouch Interface”. Technology Review, marzo 2009, www.technologyre-view.com/computing/22358/?a=f. Último acceso el 19 de abril de 2009.Hornbaek, K. y E. Frokjaer. “Comparing Usability Problems and Redesign Proposals as Input to PracticalSystems Development”. CHI 2005, abril 2-7, 2005, pp. 391-400.Mantei, M. M. y T. J. Teorey. “Incorporating Behavioral Techniques in the System Development Lifecycle”.MIS Quarterly, Vol. 13, Núm. 3, septiembre 1989, pp. 257-267.Nielsen, J. y R. L. Mack. Usability Inspection Methods. Nueva York: John Wiley, 1994.Nielsen, J., R. Molich, C. Snyder y S. Farrell. E-Commerce User Experience. Fremont, CA: Norman NielsenGroup, 2001.Rubin, J. Handbook of Usability Testing. Nueva York: John Wiley, 1994.Schneiderman, B. y C. Plaisant. Designing the User Interface: Strategies for Effective Human-ComputerInteraction. Nueva York: Addison-Wesley, 2005.Te’eni, D. J. Carey y P. Zhang. Human Computer Interaction: Developing Effective Organizational Systems.Nueva York: John Wiley, 2007.Departamento de salud y servicios humanos de los EE.UU. “Guía de usabilidad” (para desarrollar sitiosWeb). Disponible en www.usability.gov. Último acceso el 19 de abril de 2009.Comisión para la Igualdad de Oportunidades en el Empleo de los EE.UU., sitio Web que lista las obligacio-nes del patrón bajo la Ley de estadounidenses con discapacidades. Disponible en www.eeoc.gov/types/ada.html. Último acceso el 19 de abril de 2009.UsabilityNet. “Overview of the User Centered Design Process”. Disponible en: www.usabilitynet.org/management/b_overview.htm. Último acceso el 19 de abril de 2009.Venkatesh, V., M. G. Morris, G. B. Davis y F. D. Davis. “User Acceptance of Information Technology:Toward a Unified View”. MIS Quarterly, Vol. 27, Núm. 3, 2003, pp. 425-478.Zhang, P., J. Carey, D. Te’eni y M. Tremaine. “Integrating Human-Computer Interaction Development intothe System Development Life Cycle: A Methodology”. Communications of the Association for Infor-mation Systems, Vol. 15, 2005, pp. 512-543.Zhang, P. y D. Galleta (Eds.). Human Computer Interaction and Management Information Systems: Foun-dations. Armonk, NY: M.E. Sharpe, 2006.www.xlibros.com
CAPÍTULO 14 • INTERACCIÓN HUMANO-COMPUTADORA 479E P I S O D I O 1 4Caso de la CPUALLEN SCHMIDT, JULIE E. KENDALL Y KENNETH E. KENDALLDepende de los usuarios“Tomemos nuestros prototipos junto con algunas de las nuevas pantallas, informes y formularios para crear la interfaz de usua-rio final”, dice Anna a Chip.“Todo es cuestión de tiempo, ¿no es así?”, responde Chip. Estaba demasiado consciente de la importancia de diseñar unabuena interfaz. “Me gustaría tener en cuenta todos los factores de la interfaz humano-computadora. Creo que cuando termine-mos, deberíamos hacer que los usuarios completen una encuesta de usabilidad”.“¡De acuerdo!”, exclama Anna. “Vamos a delinear y definir nuestros lineamientos”.Después de hablar establecen los siguientes lineamientos para los diálogos de las pantallas:1. Las pantallas bien diseñadas deben:Comunicar las acciones e intenciones con claridad a los usuarios.Mostrar las opciones disponibles para los operadores, ya sea mediante el uso de texto o iconos. Algunos ejemplos son:HAGA LAS CORRECCIONES U OPRIMA ESC PARA CANCELARINTRODUZCA EL NÚMERO DE INVENTARIO DE HARDWAREOPRIMA LA TECLA INTROOPRIMA INTRO PARA CONFIRMAR ELIMINACIÓN, ESC PARA CANCELARBotones que digan Aceptar o CancelarEstandarizar el uso de las abreviaturas.Evitar el uso de códigos, substituir el significado de los códigos.Proveer pantallas de ayuda para las porciones complicadas del diálogo.Proveer ayuda en cuadros de información sobre las herramientas para los iconos de las barras de herramientas.2. Hay que proveer retroalimentación a los usuarios. Se incluye lo siguiente:Títulos para mostrar la página actual.Mensajes de acciones completadas con éxito, como:SE AGREGÓ EL REGISTROSE MODIFICÓ EL REGISTROMensajes de error. Algunos ejemplos son:FECHA INVÁLIDADEBE INCLUIR UN NÚMEROEL SOFTWARE NO ESTÁ EN EL ARCHIVOUn cuadro de diálogo de datos inválidos, con un botón Aceptar en una pantalla de interfaz gráfica de usuario.Procesar mensajes de retraso similares a:POR FAVOR ESPERE, SE ESTÁ GENERANDO EL INFORMEUn reloj de arena que gire boca abajo en una interfaz gráfica de usuario.3. Debe haber consistencia en el diseño, incluyendo:La ubicación de la ayuda breve en el área de la línea de estado. Las páginas Web deben incluir instrucciones y unaopción de ayuda que se indique con claridad.Fecha y hora en las áreas de encabezado.Salida consistente de todas las pantallas; por ejemplo, a través del uso de la misma acción o botón de retroceso en laspáginas Web.Uso estándar de iconos o botones, para mostrar una página anterior o siguiente en una pantalla de varias páginas.Método consistente para cancelar una operación; por ejemplo, mediante el uso de la tecla Esc. Uso estandarizado decolor y pantalla de alta intensidad; por ejemplo, que aparezcan todos los mensajes en rojo.Uso estandarizado de iconos e imágenes en las páginas Web y pantallas.Menús desplegables estandarizados para las páginas Web y en otras pantallas.4. Hay que requerir las acciones mínimas del operador para poder usar el sistema. Algunos ejemplos son:Al modificar o eliminar registros, sólo hay que especificar la clave del registro. El sistema obtiene el registro y muestrala información pertinente.Cuando se requieren nombres como entradas de clave, sólo hay que introducir las primeras letras del nombre. Elprograma usa la coincidencia parcial o Ajax para las páginas Web, de manera que se encuentren todos los nombresclave de los registros que coincidan y se presenten para que el operador los seleccione.Todas las entradas numéricas pueden omitir los ceros a la izquierda y las comas.A medida que se completa cada campo de datos, el cursor debe avanzar al siguiente campo de entrada. El usuario debepoder avanzar con el tabulador en los campos, en la secuencia correcta.www.xlibros.com
480 PARTE IV • LOS FUNDAMENTOS DEL DISEÑODespués de completar cada opción, hay que volver a mostrar la misma pantalla, con las áreas de entrada en blanco, hastaque se haga clic en el icono Salir.Al salir de una opción hay que mostrar el menú anterior.Hay que utilizar listas desplegables siempre que sea posible en las pantallas Web y de GUI.Hay que usar casillas de verificación y botones de opción para realizar selecciones siempre que sea posible.Los botones predeterminados deben estar delineados de tal forma que el usuario pueda oprimir Intro para seleccionarlos.5. Hay que validar los datos que entran al sistema. Los lineamientos son:Los campos específicos se deben verificar de acuerdo a los criterios de edición.A medida que se detecten errores, los operadores deben recibir la oportunidad de aceptar o realizar correcciones a losdatos introducidos.Cuando no se detecten errores en una transacción, hay que presentar la entrada al operador para una confirmación visual.El operador debe tener la oportunidad de aceptarla o de hacer las correcciones en los datos introducidos.Al examinar las diversas pantallas e informes (aproximadamente 30 en Access, así como muchas páginas Web), Chip yAnna deciden dividir el menú en varias funciones. “¿Cómo dividimos estas diversas funciones en un conjunto de menús?”,preguntó Chip.“¿Por qué no usamos un diagrama de descomposición para organizar las funciones en una jerarquía?”, respondió Anna.Chip y Anna empiezan a trabajar en el diagrama. Las interacciones del menú se representarán en una estructura jerárquica, endonde las opciones se mostrarán en rectángulos y el menú en general se representará mediante el rectángulo en la parte superior.Cada menú secundario aparecerá debajo del menú principal, con los programas de pantalla en el nivel más bajo. El menúprincipal tendrá seis opciones principales, como se muestra en la figura E14.1: 1) Actualizar software (Update Software),2) Actualizar hardware (Update Hardware), 3) Consultar (Inquiry), 4) Modificar códigos (Modify Codes), 5) Capaci-tación (Training) y 6) Informe (Report). Cada una de estas opciones se subdivide en menús más pequeños o en funcionesindividuales. El Menú Consulta se subdivide en dos menús más pequeños, Opciones de software (Software Options) yOpciones de hardware (Hardware Options), así como una opción para ejecutar la Consulta para el experto de software(Software Expert Inquiry).Menú principaldel sistemade cómputoMenú ConsultarMenúModificarcódigosMenúCapacitación Menú InformeMenúActualizarhardwareMenúActualizarsoftwareOpcionesde softwareConsultapara el expertode softwareOpcionesde hardwareConsulta dedetallesde hardwareConsulta decaracterísticasde hardwareFIGURA E14.1Jerarquía de pantallas para elsistema de cómputo.www.xlibros.com
CAPÍTULO 14 • INTERACCIÓN HUMANO-COMPUTADORA 481Los rectángulos en el diagrama de descomposición funcional se implementan mediante una serie de listas de menús des-plegables, las cuales se muestran en la figura E14.2. Cabe mencionar que el menú Consulta tiene funciones que correspondena los rectángulos en la figura anterior. Se incluye una fila de botones para las funciones comunes debajo de los menús. Lasfunciones de menú se incluyen como un conjunto de botones en el área principal de la pantalla; se puede hacer clic en estosbotones para ejecutar los programas correspondientes. Se decidió que los programas Agregar computadora (Add Computer),Agregar paquete de software (Add Software Package) y Modificar computadora (Change Computer) se ejecutarían di-rectamente desde el menú principal. Al hacer clic en los otros botones aparecen los cuadros de diálogo de selección, con opcio-nes para seleccionar programas.“También vamos a incluir menús desplegables para las páginas”, comenta Anna. “Éstos utilizan un índice z para colocarlosenfrente de la página Web. Se despliegan cuando el usuario coloca el ratón encima de ellos y desaparecen cuando quita el ratónde ellos.“Algunas veces eso puede ser molesto”, recalca Chip. “La página Web destella constantemente los menús cuando se mueveel ratón sobre la página”.“Podemos agregar un retraso para que el despliegue ocurra cuando el ratón esté encima durante más de un breve segundo”,dice Anna en tono pensativo.“Estos menús deben ser consistentes para el conjunto de páginas y formularios Web”, reflexiona Chip. “Podemos usar elmismo código y estilos en varias páginas Web”.Después de cierta deliberación cuidadosa, el diseño de los menús Web está completo. La figura E14.3 muestra el menúfinal.FIGURA E14.2Menú principal para el sistemade la computadora.FIGURA E14.3Un menú Web de la CPU quemuestra las opciones desplegablesque aparecen frente a la páginaWeb principal.www.xlibros.com
482 PARTE IV • LOS FUNDAMENTOS DEL DISEÑO“He aquí lo que pienso que deberían ser los lineamientos para los programas de actualización”, dice Anna a Chip. “Elenfoque clave está en la precisión, con una capacidad detallada de edición para cada campo de datos. Agregar programas (Addprograms) mostrará una página de entrada y permitirá crear registros de hardware o software. Después de completar todas lasentradas, el usuario debería verificar los datos dos veces y después hacer clic en el botón Agregar registro de software (AddSoftware Record). Cualquier dato que ya se encuentre en el sistema deberá implementarse mediante el uso de listas desplega-bles. También hay botones para deshacer cambios, mover información a otros registros, imprimir un registro, guardar los cam-bios y salir de la página. Se puede agregar un registro sólo si no existe de antemano la clave primaria para ese registro”.“Las pantallas de eliminación deben tener una entrada simple de clave primaria, como DESCRIPCION CURSO (COURSEDESCRIPTION) en la pantalla ELIMINAR CURSO SOFTWARE (DELETE SOFTWARE COURSE)”, continúa Anna. “Lapantalla ELIMINAR CURSO SOFTWARE usa un botón Buscar (Find) (los binoculares) para ayudar a localizar el registrodeseado. Se lee el registro correspondiente y se muestra la información en pantalla. Los usuarios hacen clic en el botón Eliminar(Delete) y se les pide que confirmen la eliminación. Si el usuario hace clic en la tecla Esc o en Cancelar (Cancel), se cancela laacción de eliminar. ¿Qué te parece todo esto?”, pregunta a Chip.“Hasta ahora todo bien”, le contesta. “¿Algo sobre pantallas en las que se puedan modificar datos?”.“Sí. Se introduce una clave primaria para el registro y se lee el registro que coincida. Aparece la información del registroy el operador puede sobrescribir los datos con sus modificaciones. Hay que validar todas las modificaciones con capacidad deedición completa. Cuando todos los campos que se modificaron sean válidos, el usuario debe hacer clic en un botón para guar-darlos. ¿Está lo bastante claro para el usuario?”, pregunta Anna.“Creo que está muy bien”, responde Chip. “Pienso que hemos tenido un buen inicio con el diseño de nuestras interfacesde usuario”.EJERCICIOSE-1. Use Microsoft Access para ver las opciones del menú para el sistema computacional.E-2. Examine la CONSULTA HARDWARE (HARDWARE INQUIRY). Explique el tipo de consulta utilizando la notaciónde valor, entidad y atributo (V, E, A).E-3. Explique en un párrafo por qué una pantalla para introducir datos debe hacer énfasis en la precisión, mientras que unapantalla de consulta hace énfasis en la rapidez con que se pueden mostrar los datos.E-4. Modifique e imprima el diagrama de jerarquías que representa al menú Actualizar Hardware (Update Hardware). Elnombre del archivo en Microsoft Visio es Update Hardware. Agregue rectángulos para representar las siguientes opcionesdel menú:MODIFICAR COMPUTADORA (CHANGE COMPUTER)ELIMINAR REGISTRO COMPUTADORA (DELETE COMPUTER RECORD)ACTUALIZAR COMPUTADORA INSTALADA (UPDATE INSTALLED COMPUTER)E-5. Use el diagrama Estructura del programa (Program Structure) de Microsoft Visio o el diagrama Descomposición fun-cional (Functional Decomposition) en Visible Analyst para dibujar un diagrama de jerarquías que represente las opcio-nes que se encuentran en el menú Actualizar Software (Update Software). Empiece con el rectángulo superior querepresenta al menú Actualizar Software.AGREGAR PAQUETE SOFTWARE (ADD SOFTWARE PACKAGE)MODIFICAR REGISTRO SOFTWARE (CHANGE SOFTWARE RECORD)ELIMINAR REGISTRO SOFTWARE (DELETE SOFTWARE RECORD)ACTUALIZAR PAQUETE SOFTWARE (UPGRADE SOFTWARE PACKAGE)E-6. Chip y Anna descubren que el menú que han diseñado es para los usuarios involucrados en la instalación y mantenimientode hardware y software de computadora. Este menú no sería adecuado para los miembros del personal y del cuerpo do-cente en general, ya que no tienen la habilidad de actualizar los registros. Diseñe un menú, ya sea en papel o mediante eluso de software con el que esté familiarizado, para proveer al usuario general la habilidad de realizar consultas y verinformes.E-7. Describa en un párrafo por qué los usuarios tendrían que cambiar a otra página (oprimiendo el botón Siguiente registro[Next Record]) para mostrar el registro correcto para la consulta UBICACION SOFTWARE (SOFTWARE LOCA-TION).E-8. Diseñe la pantalla de consulta DETALLES SOFTWARE (SOFTWARE DETAILS). El campo de entrada es NUMEROINVENTARIO SOFTWARE (SOFTWARE INVENTORY NUMBER) y deberá aparecer toda la información de soft-ware, con la excepción de EXPERTO (EXPERT) y MAQUINAS INSTALADAS EN (MACHINES INSTALLED ON).Consulte la entrada en el repositorio del flujo de datos DETALLES DE SOFTWARE de Visible Analyst o la página Webdel repositorio.www.xlibros.com
CAPÍTULO 14 • INTERACCIÓN HUMANO-COMPUTADORA 483E-9. Para programar los horarios de los salones de clase que utilizarán los estudiantes, Cher Ware necesita conocer todos lospaquetes de software disponibles en una sala específica. Lo que ella desea es introducir la UBICACION CAMPUS(CAMPUS UBICATION) y la SALA (ROOM) en una pantalla de consulta. Los campos serían TITULO (TITLE), VER-SION, LICENCIA SITIO (SITE LICENSE) y NUMERO DE COPIAS (NUMBER OF COPIES).Diseñe la consulta SOFTWARE POR SALA (SOFTWARE BY ROOM), que se describe como flujo de datos en lapágina Web del repositorio o en el repositorio de Visible Analyst.E-10. De vez en cuando, Hy Perteks recibe una solicitud de ayuda relacionada con cierto paquete de software específico. Losmiembros del personal y los estudiantes necesitan realizar opciones avanzadas o transferir datos entre distintos paquetesy tienen dificultades para hacerlo. A Hy le gustaría introducir el TITULO (TITLE) y NUMERO VERSION (VERSIONNUMBER) del software. La pantalla resultante debería mostrar el NOMBRE EXPERTO SOFTWARE (SOFTWAREEXPERT NAME) junto con la UBICACION CAMPUS (CAMPUS LOCATION) y el NUMERO SALA (ROOM NUM-BER). Diseñe la pantalla para la consulta LOCALIZAR EXPERTO SOFTWARE (LOCATE SOFTWARE EXPERT).Describa la lógica y los archivos necesarios para producir la consulta. Use la notación de valor, entidad y atributo (V, E, A)para esta consulta. Los detalles de la consulta se incluyen en la entrada en el repositorio para el flujo de datos EXPERTOSOFTWARE (SOFTWARE EXPERT) de Visible Analyst o la página Web del repositorio.E-11. Hy recibe varias solicitudes de clases de capacitación. A él le gustaría planear la capacitación y colocar las clases próxi-mas a impartir en intranet, para que el cuerpo docente tenga una cantidad adecuada de tiempo anticipado para programaruna clase. Diseñe la consulta CLASES CAPACITACION SOFTWARE (SOFTWARE TRAINING CLASSES). Encon-trará los detalles en la página Web del repositorio o en la entrada en el repositorio de flujo de datos de Visible Analystllamada CLASES CAPACITACION SOFTWARE (SOFTWARE TRAINING CLASSES).Los ejercicios en los que se antepone un icono www indican material de valor agregado disponible en el sitio Web www.pearsonhighered.com/kendall. Los estudiantes pueden descargar un archivo de ejemplo de Microsoft Visio, Visible Analyst, Microsoft Project o Microsoft Access quepueden usar para completar los ejercicios.www.xlibros.com
www.xlibros.com
485C A P Í T U L O 1 5Diseño de procedimientosprecisos de entrada de datosOBJETIVOS DE APRENDIZAJEAl completar este capítulo usted podrá:1. Comprender los usos de la codificación efectiva para apoyar a los usuarios en larealización de sus tareas.2. Diseñar metodologías efectivas y eficientes de captura de datos para las personas y lossistemas.3. Reconocer cómo asegurar la calidad de los datos por medio de la validación.4. Articular las ventajas de la precisión de la entrada de los usuarios en los sitios Web decomercio electrónico.Es de suma importancia asegurar que los usuarios puedan introducir datos enel sistema con precisión. A estas alturas es claro que la calidad de la entrada dedatos determina la calidad de la salida de información. El analista de sistemaspuede apoyar la entrada de datos con precisión por medio de la obtención decuatro objetivos generales: 1) crear una codificación significativa para los datos,2) diseñar metodologías eficientes de captura de datos, 3) asegurar una capturade datos completa y efectiva, y 4) asegurar la calidad de los datos por medio de la validación.La calidad de los datos es una medida de la consistencia y precisión de los datos dentro de ciertoslímites preestablecidos. Los datos efectivamente codificados facilitan al usuario su introducción pre-cisa, reduciendo al mínimo la cantidad de datos y por ende, el tiempo requerido para introducirlos.Cuando los usuarios introducen datos con eficiencia, la entrada cumple con ciertas medidaspredeterminadas de desempeño basadas en la relación entre el tiempo invertido y el número dedatos introducidos. La codificación efectiva, la captura e introducción de datos efectiva y eficiente,y la acción de asegurar la calidad de los datos por medio de procedimientos de validación sontodos objetivos de entrada de datos que cubriremos en este capítulo.CODIFICACIÓN EFECTIVAUna de las formas en que se pueden introducir datos con más precisión y eficiencia es mediante elempleo informado de varios códigos. Convertir datos ambiguos o voluminosos en dígitos cortosque se introduzcan con facilidad se denomina codificación (no debemos confundirlo con la escri-tura de código, o codificación, de programas).La codificación ayuda al analista de sistemas a alcanzar el objetivo de eficiencia, pues los datoscodificados requieren menos tiempo para que las personas los introduzcan y, por ende, se reduce el nú-mero de elementos introducidos. La codificación también puede ayudar a ordenar los datos en formaapropiada en un punto posterior del proceso de transformación de los datos; además pueden ahorrarvalioso espacio de memoria y almacenamiento. En resumen, la codificación es una manera de ser elo-cuente y a la vez conciso en la captura. Además de proveer precisión y eficiencia, los códigos debentener un propósito para apoyar a los usuarios. Los tipos específicos de códigos nos permiten tratar losdatos de una manera específica. Los propósitos humanos para la codificación incluyen lo siguiente:1. Mantener el registro de algo.2. Clasificar información.3. Ocultar información.P A R T E VAseguramiento eimplementación de lacalidadwww.xlibros.com
486 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADCódigo Explicación del código68506KND7533TVG 99999XXX9999XXXAbreviatura de la revistaPrimeros cinco dígitos del código postalPrimeras tres consonantes del apellidoCuatro dígitos de la direcciónFIGURA 15.2Identificación de la cuenta delsuscriptor de una revista medianteun código de derivación alfabética.Pedido #5676 Silla mecedora con piel Arthur Hook, Jr.5677 Silla de comedor/tapizada Millie Monice5678 Love Seat/tapizado J. & D. Pare5679 Silla mecedora para niño/calcomanías Lucinda MorelyProducto ClienteFIGURA 15.1Uso de un código de secuenciasimple para indicar la secuencia enque los pedidos entran a unatienda de muebles a la medida.4. Revelar información.5. Solicitar la acción apropiada.Hablaremos sobre cada uno de estos propósitos de codificación en las siguientes secciones, junto con algunosejemplos de códigos.Mantener el registro de algoAlgunas veces simplemente queremos identificar una persona, lugar o cosa sólo para llevar un registro. Por ejem-plo, un taller de muebles a la medida necesita asignar un número de trabajo a un proyecto. El vendedor necesitaconocer el nombre y la dirección del cliente, pero el gerente del taller o los trabajadores que ensamblan los mue-bles no. En consecuencia, se asigna un número arbitrario al trabajo. El número puede ser aleatorio o secuencial,como se describe en la siguiente subsección.CÓDIGOS DE SECUENCIA SIMPLE El código de secuencia simple es un número que se asigna a algo si necesitaestar enumerado. Por lo tanto, no tiene relación con los datos en sí. La figura 15.1 muestra cómo se asigna unnúmero a los pedidos de un fabricante de muebles. Con este medio de fácil referencia, la empresa puede llevar elregistro del pedido en proceso. Es más eficiente introducir el trabajo “5676” que “esa silla mecedora color cafécon negro, con el asiento de piel para Arthur Hook, Jr.”.Usar un código secuencial en vez de un número aleatorio tiene sus ventajas. En primer lugar, elimina la po-sibilidad de asignar el mismo número; en segundo, da a los usuarios una aproximación de cuándo se recibió elpedido.Hay que usar códigos de secuencia cuando el orden de procesamiento requiera de un conocimiento de lasecuencia en la que los elementos entran al sistema, o el orden en el que se desarrollen los eventos. Podemos en-contrar un ejemplo en la situación de un banco que ofrece una promoción especial en la que es importante sabercuándo presentó una persona su solicitud para un préstamo para vivienda especial de bajo interés, ya que (siendotodos los demás factores iguales) los préstamos hipotecarios especiales se otorgarán según el orden en el que sehayan presentado las solicitudes. En este caso es importante asignar un código de secuencia correcto a cada so-licitante.CÓDIGOS DE DERIVACIÓN ALFABÉTICA A veces no es conveniente usar códigos de secuencia. La situación másobvia es cuando no deseamos que alguien lea el código para averiguar cuántos números se han asignado; otrocaso es cuando sea conveniente un código más complejo para evitar un costoso error. Un posible error seríaagregar un pago a la cuenta 223 cuando en realidad queríamos agregarlo a la cuenta 224, y todo por introducir eldígito incorrecto.El código de derivación alfabética es una metodología común para identificar un número de cuenta. El ejem-plo de la figura 15.2 proviene de una etiqueta de correo para una revista. El código se convierte en el número decuenta. Los primeros cinco dígitos provienen de los primeros cinco dígitos del código postal del suscriptor; lossiguientes tres dígitos son las primeras tres consonantes en el nombre del suscriptor, los siguientes cuatro núme-ros son de la dirección y los últimos tres representan el código de la revista. El principal propósito de este códigoes identificar una cuenta.www.xlibros.com
CAPÍTULO 15 • DISEÑO DE PROCEDIMIENTOS PRECISOS DE ENTRADA DE DATOS 487CódigoPGICDSElemento deducible de impuestosPagos de interesesGastos médicosImpuestosContribucionesDonacionesSuministrosFIGURA 15.3Cómo agrupar los elementosdeducibles de impuestos pormedio de un código declasificación de una letra.Un segundo propósito es el de imprimir etiquetas de correo. Al diseñar este código, el código postal es laprimera parte del número de cuenta. Por lo general, los registros de suscriptores se actualizan sólo una vez al año,pero el principal propósito de los registros es imprimir etiquetas de correo una vez al mes o una vez por semana. Tenerel código postal como la primera parte del campo de clave primaria significa que los registros no se tienen queordenar por código postal para enviarlos en masa, ya que los registros de un archivo se almacenan en secuenciapor clave primaria. Cabe mencionar que la fecha de expiración no es parte del número de cuenta, ya que ese nú-mero puede cambiar con más frecuencia que los otros datos.Una desventaja de un código de derivación alfabética ocurre cuando la porción alfabética es pequeña (porejemplo, el nombre Po) o cuando el nombre contiene menos consonantes de las que el código requiere. El nom-bre Roe tiene sólo una consonante y se tendría que derivar como RXX, o por medio de algún otro esquema. Otradesventaja es que algunos de los datos pueden cambiar. Al modificar la dirección o el nombre de un suscriptorcambiaría la clave primaria para el archivo.Clasificar la informaciónLa clasificación ofrece la posibilidad de diferenciar entre las clases de elementos. Las clasificaciones son nece-sarias para muchos fines, como reflejar las partes del plan de seguro médico con las que cuenta un empleado, omostrar cuál estudiante completó los requerimientos básicos de su programa de estudios.Para que sean útiles, las clases deben ser mutuamente excluyentes. Por ejemplo, si un estudiante está en laclase F (que significa estudiante de primer año) y completó de 0 a 36 horas crédito, no hay que clasificarlo tam-bién como estudiante de segundo año (S). Las clases superpuestas serían F  0  36 horas crédito, S  32  64horas crédito, etcétera. Los datos no son claros y no se pueden interpretar con tanta facilidad cuando las clases decodificación no son mutuamente excluyentes.CÓDIGOS DE CLASIFICACIÓN Los códigos de clasificación se utilizan para diferenciar un grupo de datos concaracterísticas especiales de otro. Los códigos de clasificación pueden consistir de una sola letra o número. Sonuna manera abreviada de describir una persona, un lugar, una cosa o un evento.Los códigos de clasificación se listan en los manuales o se publican de manera que los usuarios puedan locali-zarlos con facilidad. Muchas veces los usuarios se familiarizan tanto con los códigos de uso frecuente que los me-morizan. Un usuario clasifica un elemento y después introduce su código directamente en un sistema en línea.Un ejemplo de codificación de clasificación es la forma en que sería conveniente agrupar los rubros dedu-cibles de impuestos para poder llenar una declaración de impuestos. La figura 15.3 muestra cómo se desarrollancódigos para elementos tales como Pagos de intereses, Gastos médicos, contribuciones, etcétera. El sistema de codi-ficación es simple: se toma la primera letra de cada una de las categorías; las contribuciones son C, los pagos deintereses son P y los suministros son S.Todo marcha bien hasta que llegamos a otras categorías (como elementos de computadora, pagos de segurosy suscripciones) que empiezan con las mismas letras utilizadas previamente. La figura 15.4 demuestra lo queocurre en este caso. Extendimos la codificación de manera que pudiéramos usar P para “ComPutadora”, A para“PAgos de seguros” y B para “SuBscripciones”. Sin duda esta situación está lejos de ser perfecta. Una manerade evitar este tipo de confusión es permitir códigos mayores de una letra, lo cual veremos más adelante en estecapítulo bajo el subtítulo de códigos mnemónicos. Los menús desplegables en un sistema de GUI utilizan confrecuencia códigos de clasificación como método abreviado para seleccionar las características del menú, comoAlt-A para el menú Archivo.CÓDIGOS DE SECUENCIA EN BLOQUE Anteriormente vimos los códigos de secuencia; el código de secuencia enbloque es una extensión. La figura 15.5 muestra cómo el usuario de una empresa asigna números al softwarede computadora. Las principales categorías de software son navegadores, paquetes de bases de datos y diseñoWeb. A estas categorías se les asignaron números secuenciales en los siguientes “bloques” o rangos: navegador,100-199, base de datos, 200-299, y así en lo sucesivo. La ventaja del código de secuencia en bloque es que losdatos se agrupan de acuerdo con las características comunes, al tiempo que aprovechan la simpleza de asignar elsiguiente número disponible (dentro del bloque, desde luego) al siguiente elemento que necesite identificación.www.xlibros.com
488 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADCódigo Elemento deducible de impuestosSuBscripcionesComPutadoraPAgos de segurosEstos códigosduplicados...... se corrigen al“forzar” los códigosque se van a usar.PGICDSPagos de interesesGastos médicosImpuestosContribucionesDonacionesSuministrosSCPGSubscripcionesComputadoraPagos de segurosGastos variosBPAFIGURA 15.4Los problemas al usar un códigode clasificación de una letraocurren cuando las categoríascomparten la misma letra.Código Nombre del paquete de software Tipo100101102200201202300301302Apple SafariMozilla FirefoxMicrosoft Internet ExplorerMicrosoft AccessMySQLOracleAdobe DreamweaverFreeway ProMicrosoft Web ExpressionNavegadorBase de datosDiseño Web......FIGURA 15.5Uso de un código de secuencia enbloque para agrupar paquetes desoftware similares.Ocultar informaciónPodemos usar códigos para ocultar o disfrazar la información que otras personas no deban conocer. Hay muchasrazones por las que una empresa podría querer hacer esto. Por ejemplo, tal vez una corporación no desee que losempleados capturistas de datos accedan a la información en un archivo de personal. Tal vez una tienda quiera quesus vendedores conozcan el precio de mayoreo para mostrarles cuál es el precio más bajo que puedan negociar,pero podría codificarlo en las etiquetas de los precios para evitar que los clientes lo descubran. Tal vez un restaurantequiera capturar la información sobre el servicio sin dejar que el cliente sepa el nombre del mesero. El oculta-miento de la información y la seguridad se han convertido en temas muy importantes durante los últimos años.Las corporaciones han empezado a permitir a los distribuidores y consumidores el acceso directo a sus bases dedatos, y el hecho de manejar las transacciones comerciales a través de Internet ha provocado que sea necesariodesarrollar estrictos esquemas de cifrado. En la siguiente subsección veremos un ejemplo de cómo ocultar infor-mación por medio de códigos.CÓDIGOS DE CIFRADO Tal vez el método de codificación más simple sea la sustitución directa de una letra porotra, un número por otro o una letra por un número. Como ejemplo de sustitución de letras podríamos mencionarun tipo popular de acertijo conocido como criptograma. La figura 15.6 muestra un ejemplo de un código decifrado tomado de una tienda de departamentos de Buffalo, Nueva York, la cual codificó todos los preciosrebajados con las palabras BLEACH MIND. Nadie recordó realmente por qué se eligieron estas palabras, perotodos los empleados las conocían de corazón y eso contribuyó al éxito del código de cifrado. Podemos observaren esa figura que un artículo con un precio de venta de $25.00 podría tener un precio rebajado de BIMC, o de$18.75 cuando se decodifica letra por letra.www.xlibros.com
CAPÍTULO 15 • DISEÑO DE PROCEDIMIENTOS PRECISOS DE ENTRADA DE DATOS 489Código Significado Ejemplo de la etiqueta de precio ExplicaciónB 1 GOLDEN’S Nombre de la tiendaL 2 202-395-40 Código de estiloE 3 BIMC Precio rebajado codificadoA 4C 5H 6 Talla 12 Tamaño de la ropaM 7I 8 $25.00 Precio del clienteN 9D 0Precio regular del vestido = $25.00BIMC codificado de la etiqueta de rebaja = $18.75FIGURA 15.6Codificar los precios rebajadosmediante un código de cifrado esuna forma de ocultar lainformación de los precios a losclientes.Revelar informaciónAlgunas veces es conveniente revelar información a usuarios específicos por medio de un código. En una tiendade ropa, la información sobre el departamento, producto, color y tamaño se imprime junto con el precio en el re-cibo para cada artículo. Esta información ayuda a los vendedores y al personal de existencias a localizar el lugarpara la mercancía.Otra razón de revelar información por medio de códigos es para que la entrada de datos sea más significativapara los humanos. Un número de pieza, nombre o descripción familiares producen una mayor entrada de datos.Los ejemplos de los códigos en la siguiente subsección explican cómo se pueden llevar a cabo estos conceptos.2023954010 202 395 40 10Código Mercancía descrita Explicación del códigoTalla(Talla 12)Talla(Talla 10)Color(Beige)Color(Rojo)Producto(Abrigo estilo 219)Producto(Vestido estilo 395)Departamento(Abrigos de invierno)Departamento(Maternidad)414 219 19 12Vestido de maternidadrojo, estilo 385, talla 10Abrigo de invierno colorbeige, estilo 219, talla 124142191912FIGURA 15.7El uso de un código desubconjunto de dígitossignificativos ayuda a losempleados a localizarlos artículos que correspondena un departamento específico.www.xlibros.com
490 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADHospitales de la ciudadBGH Buffalo General HospitalROS Roswell Park Memorial InstituteKEN Kenmore MercyDEA Deaconess HospitalSIS Sisters of CharitySTF Saint Francis HospitalSTJ Saint Joseph’s HospitalOLV Our Lady of Victory HospitalCódigoFIGURA 15.8Los códigos mnemónicosfuncionan como ayudas dememoria mediante el uso de unacombinación significativa de letrasy números.CÓDIGOS DE SUBCONJUNTO DE DÍGITOS SIGNIFICATIVOS Cuando es posible describir un producto en virtud desu membresía en varios subgrupos, podemos usar un código de subconjunto de dígitos significativos para ayudara describirlo. El ejemplo de la etiqueta de precios de la tienda de ropa en la figura 15.7 es un ejemplo efectivo deun código de subconjunto de dígitos significativos.Para el cliente o espectador casual, la descripción del artículo parece ser un largo número; para los vendedo-res, el número está formado de varios números más pequeños, cada uno de los cuales tiene su propio significado.Los primeros tres dígitos representan el departamento, los siguientes tres el producto, los siguientes dos el colory los últimos dos el tamaño.Los códigos de subconjunto de dígitos significativos pueden consistir de la información que describe real-mente al producto (por ejemplo, el número 10 representa a la talla 10) o de números que se asignan en formaarbitraria (por ejemplo, se asigna un 202 para indicar el departamento de maternidad). En este caso, la ventaja deusar un código de subconjunto de dígitos significativos es que es posible localizar los artículos que pertenecen acierto grupo o clase. Por ejemplo, si el gerente de la tienda decidió rebajar toda la mercancía de invierno para unaventa próxima, los vendedores podrían localizar todos los artículos que pertenezcan a los departamentos del 310al 449, el bloque de códigos que se utilizan para designar “invierno” en general.CÓDIGOS MNEMÓNICOS Un mnemónico es una ayuda para la memoria humana. Se considera mnemónicocualquier código que ayuda a una persona a introducir los datos o a un usuario a recordar cómo usar lainformación. Al utilizar una combinación de letras y símbolos obtenemos una manera muy clara de codificar unproducto, de tal forma que el código se pueda ver y comprender con facilidad.Los códigos de hospitales de la ciudad utilizados por el Banco de Sangre Regional de Buffalo eran mnemó-nicos, como se muestra en la figura 15.8. Los códigos simples se inventaron precisamente debido a que los admi-nistradores y analistas de sistemas del banco de sangre querían asegurar que los códigos de los hospitales fueranfáciles de memorizar y recordar. Los códigos mnemónicos para los hospitales ayudaron a reducir la posibilidadde enviar sangre al hospital incorrecto.UnicodeLos códigos nos permiten revelar caracteres que por lo general no podemos introducir o ver. Los teclados tradi-cionales proporcionan conjuntos de caracteres conocidos para las personas que utilizan caracteres alfabéticos oc-cidentales (conocidos como caracteres del latín), pero muchos lenguajes como el griego, japonés, chino o hebreono utilizan el alfabeto occidental. Estos lenguajes pueden usar letras griegas, glifos o símbolos que representansílabas o palabras completas. La Organización Internacional para la Estandarización (ISO) definió el conjunto decaracteres Unicode, el cual incluye todos los símbolos de lenguajes estándar y tiene espacio para 65,535 carac-teres. Podemos mostrar páginas Web escritas en otros alfabetos si descargamos un editor de métodos de entradade Microsoft.Los símbolos de glifos se representan mediante una notación “&#xnnnn;”, en la que nnnn representa a unaletra o símbolo específico y x significa que se utiliza la notación hexadecimal, o numeración base 16, para re-presentar los caracteres Unicode. Por ejemplo, &#30B3 representa el símbolo ko en japonés katakana. El códigoque se utiliza para la palabra japonesa hola, konichiwa, es &#x3053;&#x306B;&#x3061;&#x308F. En japonés,la palabra se ve así:El conjunto completo de caracteres Unicode se agrupa por lenguaje; puede encontrarlo en www.unicode.org.www.xlibros.com
CAPÍTULO 15 • DISEÑO DE PROCEDIMIENTOS PRECISOS DE ENTRADA DE DATOS 491Código Función123456789EntregadoVendidoEchado a perderPerdido o robadoDevueltoEnviado por transferenciaRecibido por transferenciaEntrada en el diario (Sumar)Entrada en el diario (Restar)FIGURA 15.9Los códigos de función capturanen forma compacta las funcionesque debe realizar la computadora.Solicitar la acción apropiadaA menudo se requieren códigos para instruir a la computadora o al encargado de tomar decisiones sobre la ac-ción que deben tomar. Por lo general, dichos códigos se conocen como códigos de función y comúnmente tomanla forma de códigos de secuencia o mnemónicos.CÓDIGOS DE FUNCIÓN Las funciones, que el analista o programador desea que la computadora realice con losdatos, se capturan en códigos de función. La acción de explicar con detalle las actividades a realizar se traduceen un código corto numérico o alfanumérico.La figura 15.9 muestra ejemplos de un código de función para actualizar el inventario. Suponga que admi-nistra un departamento de productos lácteos; si se echara a perder una caja de yogurt, utilizaría el código 3 paraindicar este evento. Desde luego que los datos requeridos para la entrada dependen de la función que se necesite.Por ejemplo, para adjuntar datos a un registro o actualizarlo se requeriría sólo la clave del registro y al código defunción, mientras que para agregar un registro habría que introducir todos los elementos de datos, incluyendo elcódigo de función.Lineamientos generales para la codificaciónEn las secciones anteriores examinamos los propósitos de usar distintos tipos de códigos cuando los humanos ylas máquinas introducen y almacenan datos. A continuación examinaremos unas cuantas heurísticas para estable-cer un sistema de codificación. En la figura 15.10 se resaltan estas reglas.SEA CONCISO Los códigos deben ser concisos. Los códigos demasiado extensos requieren más pulsacionesde tecla y, en consecuencia, puede haber más errores. Los códigos extensos también implican que el proceso dealmacenar la información en una base de datos requerirá más memoria.Los códigos cortos son más fáciles de recordar para las personas y más fáciles de introducir que los códi-gos extensos. Si hay que usar códigos extensos, sería conveniente descomponerlos en sub-códigos. Por ejemplo,5678923453127 se podría descomponer mediante guiones de la siguiente manera: 5678-923-453-127. Estametodología es mucho más manejable y aprovecha la forma en que sabemos que las personas procesan la infor-mación: en trozos pequeños. Algunas veces, los códigos se hacen más extensos de lo necesario por alguna razón.En general los números de tarjetas de crédito son extensos para evitar que las personas adivinen el número deuna tarjeta de crédito. Visa y MasterCard utilizan números de 16 dígitos; esto permite generar números exclusi-vos para nueve billones de personas. Como los números no se asignan en forma secuencial, las probabilidades deadivinar el número de una tarjeta de crédito son muy pocas.Para establecer un sistema decodificación, el analista debe:Mantener los códigos concisosMantener los códigos establesCrear códigos únicosPermitir ordenar los códigosEvitar códigos confusosMantener los códigos uniformesPermitir modificar los códigosQue los códigos sean significativosFIGURA 15.10Hay ocho lineamientos generalespara establecer un sistema decodificación.www.xlibros.com
492 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADO P O R T U N I D A D D E C O N S U L T O R Í A 1 5 . 1Aquí parece una jungla“No puedo soportar esto. He estado buscando este sombrerodurante los últimos 45 minutos”, se queja Davey mientras balanceauna gorra de mapache agarrándola por la cola y pasándola sobre sucabeza. Él es uno de los nuevos trabajadores del almacén paraCrokett’s, una gran empresa de ventas por catálogo y comercioelectrónico. “La hoja del catálogo la llama ‘Coo m5-9w/t’. Lobueno fue que me dijiste que ‘Coo’ representa la palabra mapache.Después, claro está, pensé en las gorras y busqué por aquí. La en-contré aquí, en este bote etiquetado como NIÑOS/GORRA. ¿Nosería más fácil si el catálogo y las páginas Web coincidieran con losbotes? Para mí, esta factura dice: “Utensilios de cocina metálicos,conjunto de 5-9 piezas con Teflón’. He estado varado en los conjun-tos de cocina todo el tiempo”.Daniel, uno de sus compañeros, apenas si lo escucha mientrassaca apurado artículos de los botes para surtir otro pedido. “Te acos-tumbrarás a esto. Deben tenerlo de esta manera para que las computa-doras puedan entender la factura después. La mayor parte del tiempobusco el número de la página del catálogo en la factura, después lobusco en el libro y hago algo así como una traducción de vuelta acá...a menos que recuerde haberlo encontrado antes”, explica Daniel.Davey se empeña en decir: “Pero las computadoras son inteli-gentes y tenemos que surtir demasiados pedidos. Podríamos decir alos de facturación los nombres que tenemos en nuestros botes”.Daniel responde con cinismo: “Sí, claro. Se están muriendopor saber nuestra opinión”. Después continúa con un tono máscalmado: “Sabes, solíamos tenerlo así, pero cuando llegaron lasnuevas computadoras y pasamos a los pedidos telefónicos las 24horas y a través de Internet, todo cambió. Dijeron que los operado-res (y usuarios) tenían que saber más sobre lo que estaban ven-diendo (o comprando), por lo que cambiaron sus códigos para quefueran más como una historia”.Davey, sorprendido de la revelación de Daniel, pregunta:“¿Cuál es la historia del código con el que he estado trabajando?”.Después de inspeccionar el código en la factura de la gorra,Daniel responde: “El código con el que estabas trabajando era ‘Coom5-9w/tl’. Después de buscarlo con una rapidez increíble en lacomputadora, el operador puede decir al cliente: ‘Es una gorra demapache (Coo) para niños (m de masculino) con edades de 5 a 9,con una cola real (w/tl)’. Los árboles no nos dejan ver el bosquedebido a sus códigos, pero ya sabe como son en Crockett’s. Tienenque lograr la venta”.¿Qué tan importante es el hecho de que los botes y las facturasdel almacén se codifiquen en forma inconsistente? Responda en unpárrafo. ¿Cuáles son algunos de los problemas que surgen cuandoun código parece ser mnemónico pero los empleados nunca recibenuna “clave” apropiada para decodificarlo? Describa su respuesta endos párrafos. ¿Qué cambios realizaría en la codificación de las factu-ras/el almacén para Crockett’s? Documente sus cambios, identifiqueel tipo de código que usaría y use el código en un ejemplo de un productoque se podría vender en Crockett’s. Recuerde descifrarlo también.MANTENER LOS CÓDIGOS ESTABLES Estabilidad significa que el código de identificación para un cliente no debecambiar cada vez que se reciban nuevos datos. Anteriormente presentamos un código de derivación alfabéticapara la lista de suscriptores de una revista. La fecha de expiración no formaba parte del código de identificacióndel suscriptor debido a que es probable que vaya a cambiar.No cambie las abreviaturas de código en un sistema mnemónico. Una vez que haya elegido las abreviaturasdel código, no trate de modificarlas ya que será muy difícil que el personal de captura de datos se adapte.ASEGURAR QUE LOS CÓDIGOS SEAN ÚNICOS Para que los códigos funcionen, deben ser únicos. Tome nota detodos los códigos utilizados en el sistema para asegurar que no vaya a asignar el mismo número de código onombre a los mismos artículos. Los números de código y los nombres son una parte esencial de las entradas enlos diccionarios de datos, como vimos en el capítulo 8.PERMITIR ORDENAR LOS CÓDIGOS Si va a manipular los datos en forma útil, los códigos deben poder ordenarse.Por ejemplo, si desea realizar una búsqueda de texto en los meses del año en orden ascendente, los meses queempiezan con “J” estarían fuera de orden (Julio y después Junio). Los diccionarios se ordenan de esta manera,una letra a la vez y de izquierda a derecha. Por lo tanto, si ordenara en base a MMMDDAAAA, en donde MMMrepresenta el mes, DD el día y AAAA el año, el resultado sería incorrecto.La figura 15.11 muestra lo que ocurriría si se realizara una búsqueda de texto en distintos formatos de fecha.La tercera columna muestra un problema que formaba parte de la crisis del año 2000 (Y2K) que provocó ciertogrado de alarma e incluso apareció en la portada de la revista Time.Una de las lecciones aprendidas es que debemos asegurarnos de que los usuarios puedan hacer lo que que-ríamos que hicieran con los códigos que creamos. Es mucho más fácil ordenar códigos numéricos que los alfanu-méricos; por lo tanto, considere la opción de convertir los códigos a numéricos siempre que sea práctico.EVITAR CÓDIGOS CONFUSOS Trate de evitar el uso de caracteres de codificación que se vean o suenen igual.Los caracteres O (la letra o) y 0 (el número cero) se confunden con facilidad, al igual que la letra I y el número1, y también la letra Z y el número 2. Por ello, los códigos tales como B1C y 280Z no son satisfactorios.www.xlibros.com
CAPÍTULO 15 • DISEÑO DE PROCEDIMIENTOS PRECISOS DE ENTRADA DE DATOS 493Orden incorrectoal usarMMM-DD-AAAAOrden incorrectoal usarMM-DD-AAAAOrden incorrecto(problema del año2000) AA-MM-DDOrden correctoal usarAAAA-MM-DDDic-25-1998Dic-31-1997Jul-04-1999Jun-04-1998Jun-11-2000Jun-12-1997Oct-24-199806-04-199806-11-200006-12-199707-04-199910-24-199812-25-199812-31-199700-06-1197-06-1297-12-3198-06-0498-10-2498-12-2599-07-041997-06-121997-12-311998-06-041998-10-241998-12-251999-07-042000-06-11FIGURA 15.11Planifique para poder hacer algoútil con los datos que se hayanintroducido. En este ejemplo, lapersona que creó los códigos notomó en cuenta que se tendríanque ordenar.Un ejemplo de un código potencialmente confuso es el Código Postal Canadiense, como se muestra en lafigura 15.12. El formato del código es X9X 9X9, en donde X representa una letra y 9 representa un número. Unaventaja de usar letras en el código es que se permiten más datos en un código de seis dígitos (hay 26 letras ysólo 10 números). Como los canadienses utilizan el código con regularidad, tiene mucho sentido para ellos. Sinembargo, para los extranjeros que envían correo a Canadá puede ser muy difícil saber si el penúltimo símbolo esuna Z o un 2.MANTENER LOS CÓDIGOS UNIFORMES Para que sean efectivos y eficientes para los humanos, los códigosnecesitan conformarse a formas que se perciban rápidamente la mayor parte del tiempo. Los códigos que se usanen conjunto, como BUF-234 y KU-3456, son malos debido a que el primero contiene tres letras y tres números,mientras que el segundo sólo tiene dos letras seguidas de cuatro números.Cuando tenga que agregar fechas, trate de evitar usar los códigos MMDDAAAA en una aplicación,AAAADDMM en otra aplicación y MMDDAA en una tercera aplicación. Es importante mantener la uniformi-dad en los códigos, así como dentro de los programas.PERMITIR LA MODIFICACIÓN DE LOS CÓDIGOS. La capacidad de adaptación es una característica clave de unbuen código. El analista debe tener en cuenta que el sistema evolucionará con el tiempo, por lo que el sistema decodificación debe ser capaz de abarcar el cambio. El número de clientes debe aumentar, los clientes cambiaránde nombres y los proveedores modificarán la forma en que enumeran sus productos. El analista debe ser capaz depronosticar los cambios predecibles que los usuarios de la empresa deseen; además se debe anticipar a un ampliorango de necesidades a futuro a la hora de diseñar los códigos.HACER LOS CÓDIGOS SIGNIFICATIVOS A menos que el analista dese ocultar información de manera intencional,los códigos deben ser significativos. Los códigos efectivos no sólo contienen información; también tienen muchosentido para las personas que los utilizan. Los códigos significativos son fáciles de entender y recordar; tambiénes muy fácil trabajar con ellos. El trabajo de capturar los datos se vuelve más interesante cuando se trabaja concódigos significativos en vez de introducir sólo una serie de números sin significado.USAR LOS CÓDIGOS Podemos usar los códigos de varias formas. En los programas de validación, los datos deentrada se comparan con una lista de códigos para asegurar que sólo se hayan introducido códigos válidos. Enlos programas de informes y consultas, un código almacenado en un archivo se transforma en el significado delcódigo. Los informes y las pantallas no deben mostrar o imprimir el código real. Si lo hicieran, el usuario tendríaque memorizar los significados del código o buscarlos en un manual. Los códigos se utilizan en los programas deGUI para crear listas desplegables.Código manuscrito Código real Ciudad, Provincia ProblemaL8S 4M4T3A ZE5LOS 1JOL8S 4M4T3A 2E5L0S 1J0Hamilton, OntarioCalgary, AlbertaNiagara-on-the-Lake,OntarioLa S parece un 5El 2 parece una ZEl 5 parece una SEl cero y la o se ven casi idénticosLa S parece un 5El 1 parece una IFormato de código para el Código Postal CanadienseX9X 9X9FIGURA 15.12Combinar caracteres similares enlos códigos puede provocarerrores.www.xlibros.com
494 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADCAPTURA DE DATOS EFECTIVA Y EFICIENTEPara asegurar la calidad de los datos que los usuarios introducen al sistema, es importante capturar los datos conefectividad. La captura de datos ha recibido cada vez más atención como el punto en el procesamiento de la in-formación en el que se pueden obtener excelentes ganancias en productividad. El proceso de capturar datos hamejorado de manera considerable en las últimas cuatro décadas, a medida que avanzamos de los sistemas de va-rios pasos, lentos y propensos a errores como las tarjetas perforadas, hasta el uso de sistemas sofisticados comoel reconocimiento de caracteres (OCR), los códigos de barras y las terminales de punto de venta.Qué capturarLa decisión sobre lo que se debe capturar es más importante que la interacción del usuario con el sistema. Endefinitiva es imprescindible para hacer que la interfaz final valga la pena, dado que aún es válido el adagio“entra basura, sale basura”.Los analistas de sistemas y los usuarios son los que se encargan de las decisiones sobre los datos que sedeben capturar para introducirlos al sistema. Gran parte de lo que se captura es específico para la empresa enparticular. Capturar datos, introducirlos, almacenarlos y recuperarlos son todos procesos costosos. Con todos es-tos factores en mente, determinar qué es lo que se debe capturar se convierte en una decisión importante.Hay dos tipos de datos a introducir: los datos que cambian o varían con cada transacción y los datos quediferencian en forma concisa el elemento específico que se está procesando de los demás elementos.Un ejemplo de datos que se pueden modificar es la cantidad de provisiones que se compran cada vez queuna empresa de publicidad coloca un pedido con el mayorista de artículos de oficina. Como las cantidadescambian dependiendo del número de empleados en la empresa de publicidad y de cuántas cuentas estén mane-jando, hay que introducir datos sobre la cantidad cada vez que se coloca un pedido.Un ejemplo de datos de diferenciación es incluir el número de Seguro Social y las primeras tres letras delnombre de un/una paciente en su registro. De esta manera, el/la paciente se diferencia en forma única de losdemás pacientes en el mismo sistema.O P O R T U N I D A D D E C O N S U L T O R Í A 1 5 . 2Pescar un código de veranoVicky retira los dedos del teclado y se inclina en su estación detrabajo para verificar las letras de las facturas apiladas en frente de ella.“¡Qué diantres!”, Vicky pregunta en voz alta mientras escudriña lasletras que codifican las ciudades a donde se van a enviar los pedidos.Shelly Overseer, su supervisora, que por lo general se sienta aun par de estaciones de trabajo de distancia, pasa por ahí y ve laconsternación de Vicky. “¿Cuál es el problema? ¿Acaso olvidaron losrepresentantes de ventas escribir el código de la ciudad otra vez?”.Vicky gira en su silla para ver a Shelly de frente. “No, los có-digos están aquí, pero están raros. Por lo general utilizamos uncódigo de tres letras, ¿verdad? Como CIN para Cincinnati, SEApara Seattle, MIN para Minneapolis, BUF para Buffalo. Pero aquíhay sólo códigos de cinco letras”.“Mira”, dice Vicky mientras levanta la factura para mostrarlaa Shelly. “CINNC, SEATT, MINNE. Me tomará todo el día intro-ducir estos códigos. En serio, me estoy tardando mucho. Tal vezhaya un error. ¿No puedo simplemente usar el estándar?”.Shelly retrocede de la estación de trabajo de Vicky como si elproblema fuera contagioso. Se disculpa y dice: “Son los de mediotiempo. Están aprendiendo sobre ventas ahora, y a la gerencia lepreocupaba que hicieran un desorden con sus ciudades. Creo quetiene algo que ver con haber mezclado Newark y Nueva Orleans enlos últimos pedidos. Por lo tanto, un comité decidió agregar dosletras para que las ciudades se pudieran reconocer con más facili-dad. Esos chicos no pueden aprender todo lo que sabemos en unanoche, incluso cuando lo intentan. Pero es sólo hasta agosto 19,cuando los empleados de medio tiempo regresan a la escuela.Mientras Vicky regresa con desánimo a su teclado, Shelly sa-cude su cabeza con compasión y dice: “Se que es estresante y quete sientes miserable, pero no te preocupes. Ya se te pasará. Es sóloun código de verano”.¿Qué lineamientos generales de codificación ha pasado poralto la gerencia en su decisión de usar un código de verano para lasciudades? Haga una lista. ¿Cuál es el efecto sobre el personal decaptura de datos de tiempo completo al cambiar los códigos parafacilitar el trabajo al personal de ayuda temporal? Responda en dospárrafos. ¿Qué impacto a futuro podría tener el cambio temporal enlos códigos en cuanto a ordenar y recuperar los datos introducidosdurante el periodo de verano? Describa en dos párrafos estas impli-caciones. ¿Qué cambios puede usted sugerir de manera que losempleados de medio tiempo no se confundan con los códigos acorto plazo? En un memo para el supervisor de este grupo de tra-bajo, haga una lista de cinco a siete cambios en los procedimientosde captura o introducción de datos que se puedan realizar paraadaptarse a las contrataciones de corto plazo sin perturbar las acti-vidades comerciales regulares. Indique en un párrafo cómo sepuede lograr esta meta sin comprometer la productividad del perso-nal que introduce los datos.www.xlibros.com
CAPÍTULO 15 • DISEÑO DE PROCEDIMIENTOS PRECISOS DE ENTRADA DE DATOS 495Dejar que la computadora haga el restoAl considerar qué datos es necesario capturar para cada transacción y qué datos hay que dejar para que el sistemalos introduzca, el analista de sistemas debe aprovechar lo que las computadoras hacen mejor. En el anterior ejem-plo de la agencia de publicidad y el pedido de artículos de oficina, no es necesario que el operador que introduceel pedido de papelería vuelva a capturar la descripción de cada artículo siempre que se reciba un pedido. La compu-tadora puede almacenar y acceder a esta información con facilidad.Las computadoras pueden manejar de manera automática las tareas repetitivas, como registrar el tiempo de latransacción, calcular nuevos valores a partir de la entrada, además de almacenar y recuperar datos bajo demanda. Alemplear las mejores características de las computadoras, el diseño de la captura de datos eficiente evita la entradade datos innecesarios, que a su vez alivia muchos de los errores humanos y el aburrimiento, además de que permitea las personas concentrarse en tareas creativas o de más alto nivel. Podemos escribir software para pedir al usuarioque introduzca la fecha de hoy o capturar la fecha del reloj interno de la computadora. Una vez introducido estedato, el sistema procede a usar esa fecha en todas las transacciones procesadas en esa sesión de entrada de datos.Un ejemplo de primera sobre reutilización de datos que se introducen una vez es el del centro de bibliotecasde cómputo en línea (OCLC) que utilizan miles de bibliotecas en los Estados Unidos. OCLC se creó a partir dela idea de que cada elemento comprado por una biblioteca sólo debería catalogarse una vez en toda su vida. Des-pués de introducir un elemento, la información de clasificación va a la enorme base de datos de OCLC y se com-parte con las bibliotecas participantes. En este caso, la implementación del concepto simple de introducir datossólo una vez ahorra una enorme cantidad de tiempo al introducir los datos.También hay que tener en cuenta el poder de cálculo de la computadora al decidir qué no debemos volver aintroducir. Las computadoras son adeptas a los cálculos extensos, en los que se utilizan datos que ya se introdu-jeron antes.Por ejemplo, la persona que introduce los datos puede introducir los números de vuelo y el número de cuentade un viaje aéreo realizado por un cliente que pertenezca a un programa de incentivos para viajeros frecuentes.Después, la computadora calcula el número de millas acumuladas para cada vuelo, lo agrega a las millas que yaestán en la cuenta del cliente y actualiza el total de millas acumuladas en la cuenta. La computadora tambiénpuede marcar una cuenta que, en virtud de la gran cantidad de millas acumuladas, sea elegible para un premio.Aunque toda esta información puede aparecer en la cuenta actualizada del cliente, los únicos datos nuevos intro-ducidos fueron los números de los vuelos.En sistemas que utilizan una interfaz gráfica de usuario (GUI), a menudo los códigos se almacenan comouna función o como una tabla separada en la base de datos. Hay desventajas al crear demasiadas tablas, ya queel software debe buscar los registros que coincidan de cada tabla, lo cual podría ocasionar un acceso lento. Si loscódigos son relativamente estables y cambian con poca frecuencia, tal vez se puedan almacenar como una fun-ción de la base de datos. Si los códigos cambian con frecuencia, se almacenan en una tabla para que se puedanactualizar con facilidad.La figura 15.13 muestra cómo se utiliza una lista desplegable para seleccionar los códigos para agregar omodificar un registro en la tabla CLIENTE (CUSTOMER). Cabe mencionar que el código está almacenado, peroFIGURA 15.13Uso de una tabla de códigos enuna lista desplegable. Esta lista seutiliza para seleccionar un códigopara agregar o modificar unelemento en un registro.www.xlibros.com
496 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADla lista desplegable muestra tanto el código como su significado. Este método ayuda a asegurar la precisión, yaque el usuario no tiene que adivinar el significado del código y no hay probabilidad de que escriba uno inválido.Cómo evitar cuellos de botella y pasos adicionalesEn la terminología relacionada con la entrada de datos, un cuello de botella describe gráficamente el efecto delangostamiento de la botella en el flujo del contenido: los datos se vierten con rapidez en la amplia boca del sistema,sólo para desacelerar drásticamente en su “cuello” debido a la incapacidad del sistema para procesar el volumeno detalle de los datos que se están introduciendo. Una manera en la que podemos evitar un cuello de botella esasegurarnos que haya la capacidad suficiente para manejar los datos que se están introduciendo.Las formas de evitar los pasos adicionales se determinan no sólo durante el análisis, sino también cuando losusuarios empiezan a interactuar con los prototipos del sistema. Entre menos pasos se requieran para introducirdatos, menor será la probabilidad de introducir errores. Por lo tanto, además del ahorrar en mano de obra, el he-cho de evitar pasos adicionales también es una forma de preservar la calidad de los datos. Una vez más, usar unsistema en tiempo real en línea que capture los datos de los clientes sin necesitar la complejidad de un formularioes un excelente ejemplo de cómo ahorrar pasos en el proceso de entrada de datos.Empezar con un buen formularioPodremos lograr una captura de datos efectiva sólo si consideramos con anticipación lo que debe contener eldocumento de origen. El operador introduce los datos del documento de origen (que por lo general es un tipo deformulario); este documento es la fuente de una gran cantidad de todos los datos del sistema. Los sistemas en lí-nea (o los métodos especiales de entrada de datos, como los códigos de barras) pueden sortear la necesidad de undocumento de origen, pero es común crear de todas formas algún tipo de formulario en papel, como un recibo.Cuando se cuenta con formularios efectivos, no es necesario volver a introducir la información que la compu-tadora ya haya almacenado, ni datos como la fecha y la hora que la computadora puede determinar de maneraautomática. En el capítulo 11 vimos con detalle cómo debemos diseñar un formulario o documento de origenpara maximizar su utilidad para capturar datos y minimizar el tiempo que necesitan invertir los usuarios para in-troducir datos a partir de ese formulario o documento.Elegir un método de entrada de datosHay varios métodos eficientes de entrada de datos disponibles; para elegir uno de ellos hay que tener en cuentadiversos factores, incluyendo la necesidad de velocidad, precisión y capacitación de los usuarios; el costo delmétodo de entrada de datos (si requiere de muchos materiales o de mucha mano de obra); y los métodos que seestán usando actualmente en la organización.TECLADOS El teclado es el método más antiguo de entrada de datos; sin duda es con el que los miembros de lasorganizaciones están más familiarizados. Se han realizado algunas mejoras en los teclados con el paso de los años.Las características más recientes incluyen teclas de función especial para abrir programas, teclas que se utilizanpara desplazarse por las pantallas y explorar la Web, y teclas que se pueden programar con macros para reducirel número de pulsaciones de teclas requeridas. Los teclados ergonómicos e infrarrojos, junto con los teclados yratones habilitados con Bluetooth, son también mejoras considerables.RECONOCIMIENTO ÓPTICO DE CARACTERES El reconocimiento óptico de caracteres (OCR) permite a un usuarioleer la entrada desde un documento de origen mediante un escáner óptico en vez de usar los medios magnéticosque hemos visto hasta ahora. El uso de dispositivos OCR puede agilizar la entrada de datos de un 60 a un 90 porciento, en comparación con algunos métodos de tecleo.El aumento en la velocidad del OCR se debe a que no hay que codificar ni teclear los datos que provienen de losdocumentos de origen. Esto elimina muchos de los pasos que se requieren en otros dispositivos de entrada enlos que se consume mucho tiempo y puede haber muchos errores. El método del OCR demanda pocas habilida-des del empleado, lo que significa que su capacitación no tiene que ser muy especializada; esto resulta en menoserrores y menos tiempo invertido por los empleados en esfuerzos redundantes. Además, descentraliza la respon-sabilidad de obtener datos de calidad para asignarla directamente a la unidad que los está generando. El OCR,que ahora está disponible para todos, tiene un uso adicional y muy práctico: transformar los faxes en documentos quese puedan editar.OTROS MÉTODOS DE ENTRADA DE DATOS Hay otros métodos de entrada de datos que se están empleando cadavez con más frecuencia. La mayoría de estos métodos reducen los costos de mano de obra al requerir menoshabilidades del operador o poca capacitación, acercan cada vez más el proceso de entrada de datos a su origeny eliminan la necesidad de un documento de origen. Al hacer esto se han convertido en métodos de entrada dedatos veloces y muy confiables. Los métodos de entrada de datos que veremos en las siguientes subseccionesincluyen el reconocimiento de caracteres de tinta magnética, los formularios de detección de marcas, losformularios perforados y las tiras de datos.www.xlibros.com
CAPÍTULO 15 • DISEÑO DE PROCEDIMIENTOS PRECISOS DE ENTRADA DE DATOS 497Reconocimiento de caracteres de tinta magnética Los caracteres de tinta magnética se encuentran en la parteinferior de los cheques bancarios y algunas facturas de tarjetas de crédito. Este método es similar al OCRen cuanto a que se leen caracteres especiales, pero su uso es limitado. La entrada de datos por medio delreconocimiento de caracteres de tinta magnética (MICR) se realiza a través de una máquina que lee e interpretauna sola línea de material codificado con tinta formada de partículas magnéticas.Algunas ventajas del uso de MICR son: 1) es un método confiable y de alta velocidad que no es susceptiblea confundir las marcas fuera de lugar, ya que no están codificadas en forma magnética; 2) si se requiere en todoslos cheques para retirar fondos, sirve como una medida de seguridad contra los cheques falsos, y 3) el personalde entrada de datos puede ver los números que componen el código, si es necesario verificarlo.Formularios de detección de marcas Estos formularios permiten introducir datos por medio de un escáner quedetecta en dónde se hicieron las marcas en formularios especiales. Un uso común es para calificar las hojas derespuestas de los cuestionarios a las encuestas, como se muestra en la figura 15.14. El personal requiere de unacapacitación muy básica; además se puede procesar un alto volumen de formularios con rapidez.INDICACIONES PARA MARCARHaga marcas gruesas de color negro que llenen el círculo por completo.Borre limpiamente cualquier respuesta que desee cambiar —no raye en ningún otro lado.Ejemplos de marcas CORRECTAS Ejemplos de marcas INCORRECTAS1. ¿Qué niveles de personas atiende usted principalmente en su trabajo?gerentessupervisores; capatacesotros empleados asalariadospor horasvoluntarios2. Tamaño total de la organización que usted atiendemenos de 1,000 15,000–25,0001,000–5,000 más de 25,0005,000–15,0003. ¿Qué capacitación y técnicas de desarrolloutiliza? (Por favor marque cada técnica)conferencia con o sin mediospelículasTV de circuito cerrado con videocintadiscusiones (casos, cuestiones, etc.)desempeñar rolesmodelado del comportamientosimulación; juegos avanzadoscapacitación en el trabajorotación de empleosprácticas profesionales; ayudantíastécnicas de desarrollo organizacionalotras0 1 2 3 4 50 1 2 3 4 50 1 2 3 4 50 1 2 3 4 50 1 2 3 4 50 1 2 3 4 50 1 2 3 4 50 1 2 3 4 50 1 2 3 4 50 1 2 3 4 50 1 2 3 4 50 1 2 3 4 55. La parte más considerable4. Una parte importante3. Una parte substancial2. Una parte más pequeña1. Una parte menor0. No aplicaFIGURA 15.14Un formulario de detección demarcas que se puede leer medianteun escáner agiliza el proceso deentrada de datos.www.xlibros.com
498 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADUna desventaja de los formularios de detección de marcas es que, aunque los lectores pueden determinar sise hizo una marca, no pueden interpretarla de la manera en que lo hacen los lectores ópticos de caracteres. Estoimplica que se pueden introducir marcas fuera de lugar en los formularios como datos incorrectos. Además, lasopciones se limitan a las respuestas proporcionadas en el formulario de detección de marcas, los formularios pre-sentan dificultades al capturar datos alfanuméricos debido al espacio requerido para un conjunto completo de le-tras y números, y es fácil que los usuarios que llenan formularios de detección de marcas se confundan y ponganuna marca en una posición incorrecta.Códigos de barras Por lo general, los códigos de barras aparecen en las etiquetas de productos, pero tambiénaparecen en brazaletes de identificación de pacientes en los hospitales y casi en cualquier contexto en el que unapersona u objeto necesite reportarse como entrada o salida en cualquier tipo de sistema de inventario. Podemosconsiderar a los códigos de barras como metacódigos, o códigos que codifican otros códigos, debido a queaparecen como una serie de bandas estrechas y anchas en una etiqueta, las cuales codifican números o letras. A suvez, estos símbolos tienen acceso a los datos de los productos almacenados en la memoria de la computadora.Se proyecta un rayo de luz de un escáner o lápiz óptico a través de las bandas en la etiqueta para confirmar oregistrar datos sobre el producto que se está escaneando.Una etiqueta de código de barras como la que se muestra en la figura 15.15 incluye los siguientes elementosde codificación para un producto específico de abarrotes: el número de identificación del fabricante, el número deidentificación del producto, un código para verificar la precisión del escaneo y códigos para marcar el principioy fin del escaneo.Los códigos de barras ofrecen un grado de precisión extraordinariamente elevado para la entrada de datos.Ahorra costos de mano de obra a los vendedores, ya que no hay que marcar el precio de cada artículo por sepa-rado. Además, la codificación de barras permite capturar de manera automática datos que se pueden utilizar parareordenar, rastrear el inventario con mayor precisión y pronosticar las necesidades a futuro. Los precios de ventau otros cambios en el significado de los códigos de barras se introducen en el procesador central, con lo cual nosahorramos el problema de rebajar muchos artículos.Un nuevo uso de los códigos de barras es el de rastrear las compras de un individuo con su tarjeta de crédito,con el fin de crear un perfil de cliente que pueda a su vez utilizarse para refinar las estrategias de marketing paraese individuo o tipo de consumidor. Se desarrollan nuevos dispositivos de entrada en forma constante.RFID La identificación por radiofrecuencia, conocida comúnmente como RFID, permite recolectar datos enforma automática mediante etiquetas RFID o transpondedores que contienen un chip y una antena. Una etiquetaRFID puede o no tener su propia fuente de energía. Si no cuenta con su propia fuente, la antena provee suficientepotencia de una señal entrante para energizar el chip y transmitir una respuesta. Las etiquetas RFID se puedenadjuntar a productos, paquetes, animales o incluso humanos, de manera que se pueda identificar el elemento opersona mediante una frecuencia de radio.A las etiquetas RFID también se les conoce como tarjetas de proximidad debido a su rango limitado; pue-den ser pasivas o activas. Las etiquetas RFID pasivas no tienen fuente de energía interna; las activas sí. Las eti-quetas pasivas son económicas (menos de 5 centavos de dólar por etiqueta) y por lo general tienen el tamaño deuna estampilla postal. Se utilizan en las grandes tiendas de menudeo, incluyendo Wal-Mart y Target. Wal-Martha estado trabajando mucho con la tecnología RFID para mejorar sus procesos de administración de inventario ycadena de suministro.Las etiquetas activas son mucho más confiables, ya que tienen su propia fuente de energía. El Departamentode Defensa de los EE.UU. ha utilizado estas etiquetas para minimizar los costos relacionados con la logística eincrementar la visibilidad de la cadena de suministro. Las etiquetas activas cuestan sólo unos cuantos dólarescada una.Principio (101)Código que significa “producto de abarrotes”Número de identificación del fabricante(primeros cinco dígitos)Barras de separación centrales (01010)Número de identificación del producto(últimos cinco dígitos)Código para verificar la precisión del escaneo(dígito de verificación)Fin (101)FIGURA 15.15El código de barras, como semuestra en esta etiqueta para unproducto de abarrotes, ofrecemucha precisión en la entrada dedatos.Utilizada con el permiso de UniformCode Council, Dayton, Ohio.www.xlibros.com
CAPÍTULO 15 • DISEÑO DE PROCEDIMIENTOS PRECISOS DE ENTRADA DE DATOS 499Para capturar los datos en una etiqueta RFID se requiere un lector. Este lector activa la etiqueta para que sepueda leer. El lector decodifica los datos y el código único de producto en el chip dentro de la etiqueta; despuéslo pasa a una computadora anfitriona que procesa los datos.Un ejemplo es el paso de peaje electrónico que se utiliza en los vehículos que viajan por las carreteras decuota. Se puede colocar un transpondedor RFID en el parabrisas para leerlo cada vez que el vehículo pasa poruna caseta de cuota. El lector RFID de la caseta de cuota también puede actuar como escritor, por lo que sepuede almacenar un saldo en el chip RFID.El Metro de Moscú fue el primer sistema de transporte en usar tarjetas inteligentes RFID en 1998. Otrasaplicaciones incluyen el rastreo de ganado para identificar la manada de origen, lo cual permite rastrear mejor laenfermedad de las vacas locas, así como el rastreo RFID en librerías, servicios de equipaje de aerolíneas, farma-cias e incluso pacientes o internos.Las etiquetas RFID son de uso común en la mayoría de las aplicaciones relacionadas con envíos. La tecnolo-gía pronto se utilizará en las transacciones de efectivo electrónico en general. Incluso pueden llegar a reemplazarlos códigos RPC, ya que sus ventajas incluyen la seguridad (al reducir el número de artículos robados) y no re-querir escaneo (simplemente se pasan por la zona del lector).Pero la tecnología RFID no escapa de la controversia. La privacidad es una cuestión importante. Un indivi-duo que paga un artículo etiquetado con tarjeta de crédito o con una tarjeta de comprador corre el riesgo de seridentificado.El analista de sistemas necesita pensar en los clientes involucrados y sus derechos al considerar si esta tec-nología se adapta a la aplicación que está diseñando.ASEGURAR LA CALIDAD DE LOS DATOS POR MEDIO DE LA VALIDACIÓNDE LA ENTRADAHasta ahora hemos visto cómo asegurar la captura efectiva de datos hacia documentos de origen y la entradaeficiente de datos al sistema por medio de diversos dispositivos de entrada. Aunque estas condiciones son nece-sarias para asegurar datos de calidad, por sí solas no son suficientes.Los errores no se pueden descartar por completo; además no podemos sobre enfatizar la importancia críticade atrapar errores durante la entrada, antes de procesarlos y almacenarlos. La maraña de problemas que surgen de-bido a una entrada incorrecta puede ser una pesadilla, en especial porque una gran cantidad de problemas tardanO P O R T U N I D A D D E C O N S U L T O R Í A 1 5 . 3Entrar o no entrar: esa es la cuestión“Acabo de asumir la presidencia de Elsinore Industries”, diceRose N. Krantz. “Formamos parte de una industria de fabricaciónde casitas pequeñas, donde fabricamos aldeas de juguete para niños desiete años en adelante. Nuestras pequeñas aldeas consisten de varioskits para construir lo que quieran los niños a partir de cubos de plás-tico que se conectan entre sí, que pueden ser edificios básicos comola presidencia municipal, la estación de policía, la estación de gaso-lina y un carrito para hot-dogs. Cada kit tiene un número de piezaúnico de 200 a 800, pero no se utilizan todos los números. Losprecios de mayoreo varían de $54.95 por la presidencia municipala $1.79 para un carrito de hot-dogs.“He estado melancólica en relación con lo que descubrí desdeque entré a trabajar en Elsinore. ‘Algo huele a podrido’ aquí, comodice un famoso dramaturgo. De hecho, el sistema de facturaciónestaba tan descontrolado que he estado trabajando sin cesar connuestra contadora, Gilda Stern”, declara Krantz.“Me gustaría que nos ayudara a ordenar todo”, continúa Rose.“Enviamos a 12 almacenes de distribución por todo el país. Cadafactura que escribimos incluye el número de almacén, del 1 al 12,su dirección física y el código postal estadounidense (zip code).También ponemos en cada factura la fecha en que surtiremos elpedido, los números de código para los kits de la aldea que ordenen,una descripción de cada kit, el precio por artículo y la cantidad decada kit ordenado. Desde luego que también incluimos los subtota-les de los costos de los kits, los costos de envío y el total que el al-macén nos debe. No se agregan impuestos, ya que lo que nosotrosles vendemos lo revenden a las jugueterías en los 50 estados. Quieroque usted nos ayude a diseñar un sistema computarizado de intro-ducción de pedidos que forme parte del sistema de facturación deElsinore Industries”.Para su diseño de un sistema de entrada de datos para Elsinore,tome en cuenta todos los objetivos para entrada de datos que vimosen el capítulo. Dibuje las pantallas que sean necesarias para ilustrarsu diseño. ¿Cómo puede hacer que el sistema de introducción depedidos sea eficiente? Responda en un párrafo. Especifique losdatos que se pueden almacenar y recuperar, junto con los datos quese deben introducir de nuevo para cada pedido. ¿Cómo se puedeevitar el trabajo innecesario? Escriba un párrafo para explicar porqué el sistema que usted propone es más eficiente que el anterior.¿Cómo se puede asegurar la precisión de los datos? Mencione tresestrategias que funcionen con el tipo de datos que se van a introdu-cir para Elsinore Industries.www.xlibros.com
500 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADmucho tiempo en hacerse ver. El analista de sistemas debe suponer que ocurrirán errores en los datos y debetrabajar con los usuarios para diseñar pruebas de validación de la entrada, de manera que pueda evitar que seprocesen y almacenen datos erróneos, ya que los errores iniciales que no se descubren durante largos periodosde tiempo son costosos y se requiere mucho tiempo para corregirlos.No es posible imaginar todo lo que puede salir mal con la entrada, pero debemos cubrir los tipos de erroresque provocan el mayor porcentaje de los problemas. En la figura 15.16 se proporciona un resumen de los proble-mas potenciales que debemos considerar al validar la entrada.Validar las transacciones de entradaEl proceso de validar las transacciones de entrada se realiza principalmente por medio de software, lo cual esresponsabilidad del programador, pero es importante que el analista de sistemas conozca los problemas comunesque pueden invalidar una transacción. Las empresas comprometidas con la calidad incluirán chequeos de validezcomo parte de su software de rutina.Pueden ocurrir tres problemas principales con las transacciones de entrada: que se envíen los datos incorrec-tos al sistema, que una persona no autorizada envíe los datos o que se pida al sistema que realice una funcióninaceptable.ENVIAR LOS DATOS INCORRECTOS Un ejemplo de enviar datos incorrectos al sistema sería tratar de introducirel número de seguro social de un paciente en el sistema de nóminas de un hospital. Por lo general este error esaccidental, pero hay que marcarlo antes de procesar los datos.DATOS ENVIADOS POR UNA PERSONA NO AUTORIZADA El sistema también debe ser capaz de descubrir siuna persona no autorizada envía datos por lo demás correctos. Por ejemplo, sólo el farmacéutico supervisorpodría introducir los totales del inventario para las sustancias controladas en la farmacia. La invalidación delas transacciones enviadas por un individuo no autorizado se aplica a las cuestiones de privacidad y seguridadrelacionadas con los sistemas de nómina y los registros de evaluación de empleados que determinan los nivelesde los pagos, las promociones o la disciplina; los archivos que contienen secretos comerciales; y los archivos quecontienen información clasificada, como los datos de defensa nacional.PEDIR AL SISTEMA QUE REALICE UNA FUNCIÓN INACEPTABLE El tercer error que invalida las transacciones deentrada es pedir al sistema que realice una función inaceptable. Por ejemplo, sería lógico que el gerente de recur-sos humanos actualizara el registro existente de un empleado actual, pero sería inválido pedir al sistema quecreara un nuevo archivo en vez de sólo actualizar un registro existente.Validar los datos de entradaEs esencial que los datos de entrada (junto con las transacciones solicitadas) sean válidos. Se pueden incorporarvarias pruebas al software para asegurar esta validez. Vamos a considerar ocho posibles formas de validar la en-trada.PRUEBA DE DATOS FALTANTES En el primer tipo de prueba de validez se examinan los datos para ver si hayelementos faltantes. En algunas situaciones deben estar presentes todos los datos. Por ejemplo, un archivo delseguro social para pagar los beneficios por retiro o discapacidad sería inválido si no incluyera el número deseguro social del beneficiario.Este tipo devalidación Puede evitar estos problemasValidar transaccionesde entradaValidar datos deentradaEnviar los datos incorrectosDatos enviados por una persona no autorizadaPedir al sistema que realice una funcióninaceptableDatos faltantesLongitud de campo incorrectaDatos con una composición inaceptableDatos fuera de rangoDatos inválidosDatos que no coinciden con los datosalmacenadosFIGURA 15.16Es importante validar la entradapara asegurar que se eliminen lomás pronto posible la mayoría delos problemas potenciales con losdatos.www.xlibros.com
CAPÍTULO 15 • DISEÑO DE PROCEDIMIENTOS PRECISOS DE ENTRADA DE DATOS 501Además, el registro debe incluir los datos clave que distinguen a un registro de todos los demás, junto conel código de función que indica a la computadora lo que debe hacer con los datos. El analista de sistemas ne-cesita interactuar con los usuarios para determinar qué elementos de datos son esenciales y averiguar si algunavez ocurrieron casos excepcionales que permitieran considerar los datos válidos, incluso cuando faltaran algunoselementos de datos. Por ejemplo, una segunda línea de dirección que contenga un número de apartamento o lainicial del segundo nombre de una persona tal vez no sea una entrada requerida.PRUEBA DE LONGITUD DE CAMPO CORRECTA En el segundo tipo de prueba de validez se comprueba la entradapara ver si tiene la longitud correcta para el campo. Por ejemplo, si la estación climatológica de Omaha,Nebraska se reporta con la computadora del servicio climatológico nacional y por error provee un código deciudad de dos letras (OM) en vez del código nacional de ciudad de tres letras (OMA), los datos de entrada sepodrían considerar inválidos y por ende no se procesarían.PRUEBA DE CLASE O COMPOSICIÓN La prueba de la validez de la clase o composición verifica que todos loscampos de datos que deben estar compuestos exclusivamente de números no contengan letras y viceversa. Alusar una prueba de composición, el programa no debe aceptar un número de cuenta de American Express queincluya tanto letras como números.PRUEBA DE RANGO O SENSATEZ Las pruebas de validez de rango o sensatez son en realidad medidas de entradade sentido común, las cuales responden a la pregunta de si los datos se encuentran dentro de un rango aceptableo si son razonables dentro de ciertos parámetros predeterminados. Por ejemplo, si un usuario estaba tratandode verificar una fecha de envío propuesta, la prueba de rango no permitiría una fecha de envío en el día 32 deoctubre, ni aceptaría un envío en el mes 13, siendo los rangos respectivos de 1 a 31 días y de 1 a 12 meses.Una prueba de sensatez averigua si el elemento tiene sentido para la transacción. Por ejemplo, al agregarun nuevo empleado a la nómina, no sería razonable introducir una edad de 120 años. Las pruebas de sensatez seutilizan para los datos que son continuos; es decir, datos que tienen un rango uniforme de valores. Estas pruebaspueden incluir un límite inferior, un límite superior o ambos.PRUEBA DE VALORES INVÁLIDOS El proceso de comprobar que la entrada no tenga valores inválidos funcionasi sólo hay unos cuantos valores válidos. Esta prueba no es viable para las situaciones en las que los valoresno son restringidos ni predecibles. Este tipo de prueba es útil para verificar las respuestas donde los datos sedividen en un número limitado de clases. Por ejemplo, una empresa de correduría divide las cuentas en tresclases solamente: clase 1  cuenta activa, clase 2  cuenta inactiva y clase 3  cuenta cerrada. Si los datos seasignan a cualquier otra clase por medio de un error, los valores son inválidos. Por lo general las verificacionesde valores se realizan para los datos discretos, que sólo tienen ciertos valores. Si hay muchos valores, por logeneral se almacenan en un archivo de tabla de códigos. Al tener los valores en un archivo es más fácil agregaro modificar valores.VERIFICACIONES DE REFERENCIAS CRUZADAS Estas verificaciones se utilizan cuando un elemento tiene unarelación con otro. Para realizar una verificación de referencia cruzada, cada campo debe estar correcto por sísolo. Por ejemplo, el precio al que se vende un artículo debe ser mayor que el costo que se paga por él. Hay queintroducir el precio, el cual debe ser numérico y mayor de cero. Se utiliza el mismo criterio para validar el costo.Cuando tanto el precio como el costo son válidos, se pueden comparar.Una verificación geográfica es otro tipo de verificación de referencia cruzada. En los Estados Unidos sepuede utilizar la abreviatura de estado para asegurar que un código de área telefónica sea válido para cierto es-tado y que los primeros dos dígitos del código postal sean válidos para el estado.PRUEBA PARA COMPARAR CON DATOS ALMACENADOS La siguiente prueba de validez de los datos de entradaque veremos es en la que éstos se comparan con los datos que ya están almacenados en la computadora. Porejemplo, un número de pieza recién introducido se puede comparar con el inventario de piezas completo paraasegurar que el número exista y se esté introduciendo en forma correcta.CONFIGURAR CÓDIGOS DE AUTOVALIDACIÓN (DÍGITOS DE VERIFICACIÓN) Otro método para asegurar laprecisión de los datos, en especial los números de identificación, es utilizar un dígito de verificación en el mismocódigo. Este procedimiento implica empezar con un código numérico original, realizar algunas operacionesmatemáticas para llegar a un dígito de verificación derivado y después agregar ese dígito de verificación alcódigo original. El proceso matemático implica multiplicar cada uno de los dígitos del código original porciertos pesos predeterminados, sumar estos resultados y después dividir esta suma por un número módulo. Elnúmero módulo es necesario debido a que la suma por lo general es un número grande y necesitamos reducirel resultado a un solo dígito. Por último, el residuo se resta del número módulo para obtener el dígito deverificación.www.xlibros.com
502 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADLa figura 15.17 muestra cómo se convierte el número de pieza de cinco dígitos de una manguera para radia-dor (54823) en un número de seis dígitos que contiene un dígito de verificación. En este ejemplo, los pesos elegidosfueron el sistema “1-3-1”; en otras palabras, los pesos alternan entre 1 y 3. Después de multiplicar los dígitos 5,4, 8, 2 y 3 por 1, 3, 1, 3 y 1, se convirtieron en 5, 12, 8, 6 y 3. La suma de estos nuevos dígitos es 34. Después el34 se divide entre el número módulo elegido, 10, para obtener el resultado de 3 y un residuo de 4. El residuo (4)se resta del número módulo (10) para obtener un dígito de verificación de 6. Ahora el dígito 6 se coloca al finaldel número original para producir el código del producto oficial para la manguera de radiador (548236).Uso de los dígitos de verificación El sistema de dígitos de verificación funciona de la siguiente manera. Supongaque tenemos el número de pieza 53411. Hay que teclear este número en el sistema, y mientras hacemos esopueden ocurrir distintos tipos de errores. Uno de los posibles errores es teclear mal un dígito; por ejemplo, elempleado teclea 54411 en vez de 53411. Sólo el dígito en la posición de los miles es incorrecto, pero este errorpuede provocar que se envíe la pieza incorrecta.Un segundo tipo de error es el de los dígitos transpuestos. Es común que el número deseado 53411se tecleecomo el número 54311, sólo debido a que dos teclas se oprimieron en orden inverso. Los errores de transposi-ción también son difíciles de detectar para los humanos.Podemos evitar estos errores mediante el uso de un dígito de verificación, ya que cada uno de estos nú-meros (el correcto y el erróneo) tendrían un número de dígito de verificación distinto, como se muestra en laElegir el método de ponderacióny el número módulo a usar entodos los cálculos.Multiplicar el dígito por el pesoelegido.Sumar los nuevos númerosDividir entre el númeromódulo.Calcular el dígito de verificación:tomar el número módulo yrestar al residuo (restar denuevo si es mayor de 10).Agregar dígito de verificación alfinal del número.Usar este nuevo código para laentrada de datos y dejar quela computadora valide el código.54823“1 × 3 × 1” y 105× 1534104× 3128× 182× 363× 135 + 12 + 8 + 6 + 3 = 34= 3 con un residuo de 410 – 4 = 654823 6548236Empezar con el código numérico.FIGURA 15.17Los pasos para convertir unnúmero de pieza de cinco dígitosen un número de seis dígitos quecontiene un dígito de verificación.www.xlibros.com
CAPÍTULO 15 • DISEÑO DE PROCEDIMIENTOS PRECISOS DE ENTRADA DE DATOS 503figura 15.18. Si el número de pieza 53411 se modificara a 534118 (incluyendo el dígito de verificación 8) yocurriera cualquiera de los dos errores antes descritos, se atraparía el error. Si el segundo dígito se teclearaen forma equivocada como 4, la computadora no aceptaría 544118 como un número válido, ya que el dígitode verificación para 54411 sería 5 y no 8. De manera similar, si se transpusieran el segundo y tercer dígitos,como en 543118, la computadora también rechazaría el número debido a que el dígito de verificación para54311 sería 6 y no 8.El analista de sistemas selecciona los pesos y el número módulo, pero una vez elegidos no deben cambiar.En la figura 15.19 encontrará algunos ejemplos de métodos de ponderación y números módulo.VERIFICACIÓN DE TARJETAS DE CRÉDITO Al introducir tarjetas de crédito en un sitio Web o programa decomputadora, la primera verificación es la longitud del número. Las compañías de tarjetas de crédito diseñaronsus tarjetas para incluir un número distinto de dígitos. Por ejemplo, las tarjetas Visa son de 16 dígitos mientrasque los de las tarjetas American Express están compuestas por 15 dígitos.Otra prueba es relacionar la compañía de la tarjeta de crédito y el banco para verificar que sea realmente unatarjeta emitida por esa compañía. Por lo general los primeros cuatro dígitos indican el tipo de tarjeta. Los dígitosde en medio comúnmente representan al banco y al cliente. El último dígito es de verificación.Además de estos métodos de verificación, en el procesamiento de tarjetas de crédito se utiliza una fórmulade dígitos de verificación conocida como fórmula Luhn, la cual se creó en la década de 1960. Suponga que tene-EstadoCorrectoCódigo originalDígito deverificación Nuevo código5 3 4 1 15 4 4 1 15 4 3 1 18 534118Error al teclear un dígito 5 544115Transposición 6 543116FIGURA 15.18Evitar errores de entrada de datoscomunes por medio del uso de undígito de verificación.Método de dígitode verificación Cálculos para agregar el dígito de verificación al número original 29645Módulo 10“2-1-2”Módulo 10“3-1-3”Módulo 11“Aritmético”Módulo 10“Geométrico”= 39/10 = 3 residuo2× 24 +9× 19 +6× 212 +4× 14 +10(9)110(2)85× 2102× 36 +9× 19 +6× 318 +4× 14 +5× 3152× 612 +9× 545 +6× 424 +4× 312 +5× 2102× 3264 +9× 16144 +6× 848 +4× 416 +5× 210Dígito de verificación igual aEl código con dígito deverificación es 296451.= 52/10 = 5 residuoDígito de verificación igual aEl código con dígito deverificación es 296458.11(4)7= 103/11 = 9 residuoDígito de verificación igual aEl código con dígito deverificación es 296457.11(7)4= 282/11 = 25 residuoDígito de verificación igual aEl código con dígito deverificación es 296454.FIGURA 15.19Ejemplos de métodos deponderación y números módulo.www.xlibros.com
504 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADmos un número 7-7-7-8-8-8, donde los primeros cinco números representan un número de cuenta bancaria y elúltimo dígito es de verificación. Vamos a aplicar la fórmula de Luhn para ver si es un número válido.1. Duplique el penúltimo dígito y después los demás dígitos (es decir, omita un dígito, duplique el siguiente,omita un dígito, duplique el siguiente, etc.). Por ejemplo, el número 7-7-7-8-8-8 se convierte en 14-7-14-8-16-8.2. Si al duplicar un dígito se produce un número mayor de 10, hay que reducir este número de dos dígitos a unsolo dígito, para lo cual se suman los dos números. En nuestro ejemplo, el 14 se convierte en 1  4  5 y el16 se convierte en 1  6  7. Después de esto, nuestro número original 7-7-7-8-8-8 se ha transformado enun nuevo número, 5-7-5-8-7-8.3. Ahora sume todos los dígitos en el nuevo número. Así, 5  7  5  8  7  8  40.4. Vea el total. Si termina en cero, el número es válido de acuerdo con la fórmula de Luhn. Como 40 terminaen cero, podemos decir que pasa la prueba de la fórmula de Luhn.Podemos usar la fórmula de Luhn para identificar los errores al introducir una tarjeta de crédito incorrecta. Porejemplo, el número de tarjeta de crédito 1334-1334-1334-1334 es válido, debido a que los dígitos del númerotransformado 2364-2364-2364-2364 se suman para un total de 60, un número que termina en cero. Si un usuariointroduce un dígito incorrecto, el total no será un múltiplo de cero.Sin embargo, la fórmula de Luhn no atrapa todos los errores. Si un usuario comete errores al introducir másde un dígito —por ejemplo, si introduce 1334-1334-1334-331— el total del número transformado (2364-2364-2364-6324) sigue siendo 60. Este error de transposición (invertir el tercer y cuarto dígitos de derecha a izquierda)no se atrapará.Las compañías de tarjetas de crédito también usan la fecha de expiración y un código de verificación de treso cuatro dígitos, a menudo escrito en el lado posterior de la tarjeta para una mayor seguridad.Las siete pruebas para verificar la validez de la entrada pueden ayudar de manera considerable a protegerel sistema contra la entrada y el almacenamiento de datos erróneos. Siempre debemos suponer que es muchomás probable que ocurran errores humanos en la entrada a que no ocurran. Es su responsabilidad como analistacomprender cuáles errores invalidarán los datos y cómo usar la computadora para protegerse contra esos erroreshumanos, para así limitar su intrusión en los datos del sistema.O P O R T U N I D A D D E C O N S U L T O R Í A 1 5 . 4¿Validan el estacionamiento?“ Qué vamos a hacer, Mercedes?”, pregunta Edsel con cansan-cio. Mercedes y Edsel están revisando la impresión de facturaciónmás reciente para su empresa, Denton and Denton Parking Garages.Han estado comprando servicios de facturación por lotes de unaempresa local pequeña de servicios de computadora desde que ad-quirieron tres estacionamientos cerrados en un área metropolitanade tamaño medio. La empresa Denton and Denton Parking Garagesrenta lugares de estacionamiento por día, mes y año a las empresase individuos.Mercedes responde: “No estoy segura de cuál será nuestro si-guiente movimiento, pero la facturación está toda mal. Tal vez de-beríamos tratar de hablar con el personal de TI”.“Dijeron que podrían averiguar cómo calcular estos costosviendo lo que habían hecho a mano los dueños anteriores, y dijeronque no querían ejecutar el sistema antiguo y el nuevo en paralelo”,comenta Edsel al tiempo que sacude la cabeza. “Pero eso no estábien. Por lo menos yo no puedo resolverlo. Tal vez usted pueda”.Mercedes acepta la noción de buscar la salida sospechosa yempieza a analizar el informe con detalle. “Bueno, al fin y al cabo nosaben que recibimos automóviles de todas partes. Cada vez que reci-bimos un automóvil con placas que no son del estado, parece como sila computadora dejara de imaginar. Mira, nuestras placas empiezan conun número y después una letra, ¿verdad? Bueno, este de Nueva Yorkempieza con tres letras. La computadora no puede manejarlo”, dice.Edsel se integra a la conversación y empieza a pensar sobre laempresa mientras analiza el documento impreso. “Sí, y mira aquí.Esta persona no tiene un número de cuenta anual, sólo mensual, porlo que no salió ninguna factura”, dice. “Tenemos clientes mensualestambién, y la computadora no lo sabe”.“Y mira esto. Todavía hace cobros diarios por los tres días denoviembre que les dijimos que no había vacantes para los clientesdiarios. No es razonable”, afirma Mercedes.Edsel continúa avanzando página por página en el documentoimpreso, pero Mercedes lo detiene y dice: “Ya no sigas viendo. Voya llamar al personal de TI para poder arreglar este desorden”.¿Cómo caracterizaría los problemas que se encontraron en elsistema de facturación actual del estacionamiento? Use un párrafopara formular una respuesta. ¿Cuáles son algunas de las pruebas devalidez de datos que se podrían incluir en el software para producirun sistema de facturación revisado para los estacionamientos? Hagauna lista. ¿Qué podrían haber hecho distinto el programador y losanalistas de la empresa de servicios de cómputo para que el cliente notuviera qué corregir la salida de mala calidad? Use tres párrafos pararealizar un análisis crítico de lo que se hizo y lo que se debió hacer.www.xlibros.com
CAPÍTULO 15 • DISEÑO DE PROCEDIMIENTOS PRECISOS DE ENTRADA DE DATOS 505El proceso de validaciónEs importante validar cada campo hasta que sea válido o se detecte un error. El orden de prueba de los datos esprimero verificar si hay datos faltantes. Después, una prueba de sintaxis puede verificar la longitud de los datosintroducidos y que éstos tengan una clase y composición apropiadas. Sólo después de que la sintaxis sea correctase validará la semántica o significado de los datos. Esto incluye una prueba de rango, razonable o de valor, se-guida de una prueba de dígito de verificación.Las pantallas de GUI ayudan a reducir el número de errores de entrada humanos cuando incorporan boto-nes de opción, casillas de verificación y listas desplegables. Cuando se utilizan botones de opción, uno se debeestablecer como el predeterminado y la única forma de deseleccionarlo es si el usuario hace clic en un botón deopción distinto. En caso de las listas desplegables, la primera elección siempre debe contener un mensaje parainformar al usuario que debe cambiar la lista. Si la primera opción sigue aún seleccionada al momento de enviarel formulario, un mensaje debería informarle que debe seleccionar una opción distinta.Por lo general, la validación de un solo campo se realiza mediante una serie de instrucciones IF...ELSE,pero también hay métodos de validación de patrones. Por lo general estos patrones se encuentran en el diseñode la base de datos (como en Microsoft Access), pero también se pueden incluir en lenguajes de programacióncomo Perl, JavaScript y esquemas de XML. A los patrones se les conoce como expresiones regulares y contienensímbolos que representan el tipo de datos que deben estar presentes en un campo. La figura 15.20 muestra loscaracteres que se utilizan en las expresiones regulares de JavaScript.A continuación le mostramos un ejemplo de validación de patrón utilizado para evaluar una dirección decorreo electrónico:[A-Za-z0-9]\w{2,}@[A-Za-z0-9]{3,}\.[A-Za-z]{3}/El significado de este patrón es el siguiente: la primera letra debe ser cualquier letra mayúscula, minúscula onúmero ([A-Za-z0-9]). Esto va seguido de dos o más caracteres que son cualquier letra, número o un guión bajo(\w{2,}). Después debe haber un símbolo @, seguido de por lo menos tres letras o números, un punto y exacta-mente tres caracteres después del punto.Una verificación de referencias cruzadas supone que la validez de un campo puede depender del valor deotro campo. Un ejemplo de una verificación de referencia cruzada es verificar una fecha válida. En un caso muyespecial, la validez del día del mes depende del año. Es decir, febrero 29 es sólo válido durante los años bisies-tos. Una vez que se han verificado los campos individuales, podemos realizar verificaciones de referencias cruza-das. Obviamente, si uno de los campos es incorrecto, la verificación de referencia cruzada no tiene sentido y nose debe llevar a cabo.Código decarácterSignificado utilizado en la validacióncon expresiones regulares\d\D\w\W.[caracteres][car-car][a–z][A–Z][0–9][^caracteres][^car-car][^a–z]{n}{n,}\s\SCualquier dígito del 0-9Cualquier carácter que no sea dígitoCualquier letra, número o guión bajoCualquier carácter distinto de una letra, número o guiónbajoCoincide con cualquier carácterCoincide con los caracteres dentro de los corchetesCoincide con el rango de caracteresAcepta cualquier letra o dígitoCoincide con cualquier cosa que no sean los caracteresCoincide con cualquier cosa fuera del rango de caracteresAceptará todo excepto letras minúsculasCoincide con exactamente n ocurrencias del carácteranteriorCoincide con al menos n ocurrencias del carácterCualquier carácter de formato de espacio en blanco(tabulador, nueva línea, retorno, etc.)Cualquier carácter que no sea de espacio en blancoFIGURA 15.20Estos caracteres se utilizan en lavalidación con expresionesregulares (patrones).www.xlibros.com
506 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADPara validar documentos XML debemos compararlos con una definición de tipo de documento (DTD) ocon un esquema (consulte el capítulo 8). La DTD verificará si el formato del documento es válido, pero un es-quema es mucho más potente y verificará el tipo de datos (por ejemplo, entero corto o largo, número decimal ofecha). Un esquema también verificará un rango de valores, el número de dígitos a la izquierda y a la derecha deun punto decimal, y los valores de los códigos. Hay herramientas gratuitas para validar una DTD o un esquema.IEXMLTLS es una extensión de Microsoft para Internet Explorer, la cual agrega nuevas opciones de menúcuando el usuario hace clic con el botón derecho en un documento de XML.VENTAJAS DE LA PRECISIÓN EN LOS ENTORNOS DE COMERCIOELECTRÓNICOUno de los muchos beneficios de las transacciones de comercio electrónico es una mayor precisión de los datos,debido a cuatro razones:1. Por lo general los clientes teclean o introducen los datos ellos mismos.2. Los datos que introducen los clientes se almacenan para su uso posterior.3. Los datos que se introducen en el punto de ventas se reutilizan en todo el proceso de cumplimiento del pedido.4. La información se utiliza como retroalimentación para los clientes.Un analista debe estar consciente de las ventajas que se producen debido al comercio electrónico, la captura elec-trónica y el uso de la información.Los clientes teclean sus propios datosEn primer lugar, los clientes conocen su información mejor que cualquier otra persona. Saben cómo deletrear sudirección física, saben si viven en una “Avenida” o “Calle” y conocen su propio código de área. Si transmitenesta información por teléfono, es más fácil cometer un error al deletrear la dirección; si se introduce medianteun formulario de papel vía fax, puede haber errores si la transmisión de fax es difícil de leer. Pero si los usuariosintroducen su propia información, aumenta la precisión.Almacenar datos para su uso posteriorUna vez que los clientes introducen la información, ésta se puede almacenar en sus propias computadoraspersonales. Si regresan a ese sitio de comercio electrónico y llenan el mismo formulario para completar unasegunda transacción, experimentarán la ventaja de almacenar esta información. Cuando empiecen a teclear sunombre, una lista desplegable les mostrará su nombre completo incluso cuando sólo hayan introducido un parde caracteres. Si hacen clic en este indicador se introducirá su nombre completo y no tendrán que teclear más enese campo. Esta característica de autocompletar puede sugerir coincidencias para la información de tarjetas decrédito y contraseñas también; además, esta información se cifra para que los sitios Web no puedan leer la infor-mación almacenada en la computadora del usuario.Las empresas que desean almacenar información para permitir transacciones cada vez más rápidas lo hacenen pequeños archivos conocidos como cookies. Sólo la empresa que colocó la cookie en la computadora delusuario podrá acceder a la información personal.Utilizar datos por medio del proceso de cumplimiento de pedidosCuando las empresas capturan información sobre el pedido de un cliente, pueden usar y reutilizar esa informaciónen todo el proceso de cumplimiento del pedido. Así, la información recopilada para completar un pedido tambiénse puede usar para enviar una factura a un cliente, obtener el producto del almacén, enviar el producto, enviarretroalimentación al cliente y reabastecer el producto enviando una notificación al fabricante. También se puedevolver a utilizar para enviar un catálogo impreso al cliente, o enviarle una oferta especial por correo electrónico.Estas mejoras del comercio electrónico reemplazan a la metodología tradicional en la que se utilizaba un pro-ceso de obtención basado en papel, donde las órdenes de compra se enviaban vía correo convencional o fax. Esteproceso electrónico no sólo agiliza la entrega del producto sino que también incrementa la precisión para que elproducto se entregue en la dirección correcta. En vez de leer un fax o un formulario enviado por correo conven-cional, un despachador utiliza la versión electrónica de los datos, que es más precisa. La información electrónicapermite administrar mejor la cadena de suministro, incluyendo la verificación del producto y la disponibilidad derecursos en forma electrónica, además de automatizar los procesos de planificación, calendarización y proyección.Proveer retroalimentación a los clientesLas confirmaciones y actualizaciones del estado del pedido son formas de mejorar la retroalimentación para losclientes. Si un cliente recibe la confirmación de un error en un pedido que acaba de hacer, se puede corregir dewww.xlibros.com
CAPÍTULO 15 • DISEÑO DE PROCEDIMIENTOS PRECISOS DE ENTRADA DE DATOS 507Es imprescindible asegurar la calidad de la entrada de datos enel sistema de información para poder asegurar una salida decalidad. Podemos mejorar la calidad de los datos introducidosa través de una codificación efectiva, un proceso efectivo y efi-ciente de captura de datos y la validación de los datos.Podemos agilizar la manera en que los humanos introdu-cen los datos mediante el uso efectivo de la codificación, que seencarga de colocar los datos en secuencias cortas de dígitos y/oletras. Es posible usar códigos de secuencia simple y códigosde derivación alfabética para seguir el progreso de un elementodado. Los códigos de clasificación y los códigos de secuenciaen bloque son útiles para diferenciar unas clases de elemen-tos de otras. Los códigos de cifrado también son útiles debidoa que ocultan información sensible o restringida para los em-pleados.Los códigos también son convenientes para revelar infor-mación a los usuarios, ya que pueden permitir a los empleadoslocalizar artículos en existencia y hacer la entrada de datos mássignificativa. Los códigos de subconjuntos de dígitos signifi-cativos usan subgrupos de dígitos para describir un producto.Los códigos mnemónicos también revelan información al ser-vir como ayudas para la memoria humana, de manera que unoperador pueda introducir los datos correctamente, o tambiénpueden ayudar al usuario. El conjunto de caracteres Unicodeincluye todos los símbolos de los lenguajes estándar. Podemosmostrar páginas Web escritas en otros alfabetos si descargamosun editor de método de entrada de Microsoft. Los códigos defunción son abreviaturas útiles para informar a las computado-ras o las personas sobre las funciones a realizar o las accionesa tomar.Para la entrada de datos efectiva también debemos consi-derar los dispositivos de entrada. Un formulario efectivo y biendiseñado que sirva como documento de origen es el primerpaso. Los datos se pueden introducir mediante muchos méto-dos, cada uno de los cuales tiene distintas velocidades y gradosde confiabilidad. Los teclados se rediseñaron para mejorar laeficiencia y la ergonomía. El reconocimiento óptico de caracte-res (OCR), el reconocimiento de caracteres de tinta magnética(MICR) y los formularios de detección de marcas tienen cadauno capacidades especiales para mejorar la eficiencia. Los có-digos de barras también agilizan la entrada de datos, mejoranla precisión de los datos y aumentan la confiabilidad. RFIDpermite la recolección automática de datos mediante el uso deetiquetas RFID en productos, personas o animales. Pueden me-jorar los procesos de administración de inventario y la cadenade suministro.La precisión en la entrada de datos también se puede mejo-rar mediante el uso de la validación de la entrada. Los analistasdeben trabajar con los usuarios para diseñar pruebas de valida-ción de la entrada, de manera que se evite el procesamiento yalmacenamiento de datos erróneos, lo cual es costoso y poten-cialmente perjudicial.EXPERIENCIA DE HYPERCASE® 15“Algunas veces creo que soy la persona más afortunada de latierra. Incluso cuando he estado aquí por cinco años, alejado delReino Unido todo ese tiempo, todavía disfruto el hecho de conocerpersonas y hacer lo que hago. Sí, ya sé que Snowden es exigente.Usted también lo ha experimentado, ¿verdad? Él, por su parte, amalos códigos. A mí me parecen una molestia. Siempre los olvido otrato de crear algunos, o algo por el estilo. Sin embargo, algunos delos médicos piensan que son grandiosos. Deben ser todas esas abre-viaturas en latín que estudiaron en la escuela de medicina. Escuchéque la asignatura más estresante que tiene usted esta semana tienealgo que ver con introducir la información en el sistema de informesde los proyectos. El grupo de capacitación quiere sus ideas, y lasquiere rápido. Le deseo buena suerte con eso. Oh, y cuando Snow-den regrese de Tailandia, estoy seguro de que querrá echar un vis-tazo a lo que su equipo ha estado haciendo”.Preguntas de HyperCase1. Use una herramienta CASE, un paquete de software comoMicrosoft Access o un formulario de diseño impreso paradiseñar un procedimiento de entrada de datos para el sistemade informes de proyectos propuesto para el grupo decapacitación. Suponga que estamos especialmenteinteresados en el personal de médicos de consulta, quienes nodesean pasar mucho tiempo tecleando grandes cantidades dedatos al usar el sistema.2. Pruebe su procedimiento de entrada de datos con trescompañeros de su equipo. Pida retroalimentación para sabersi el procedimiento es apropiado, dado el tipo de usuariosque tendrá el sistema.3. Rediseñe el procedimiento de entrada de datos para incluir laretroalimentación que haya recibido. Explique en un párrafocómo sus cambios reflejarán los comentarios que recibió.inmediato. Por ejemplo, suponga que un cliente envía sin querer un pedido de dos ejemplares de un DVD en vezde una. Después de enviar el pedido, el cliente recibe un correo electrónico en el que se confirma el pedido. Elcliente detecta el error, se pone en contacto de inmediato con la empresa y corrige el pedido, con lo cual se evitael tener que devolver la copia adicional del DVD. La precisión se mejora gracias a una mejor retroalimentación.RESUMENwww.xlibros.com
508 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADHay que verificar las transacciones de entrada para ase-gurar que la petición sea aceptable, esté autorizada y seacorrecta. Los datos de entrada se pueden validar mediantesoftware que utilice varios tipos de pruebas que verifiquen sihay datos faltantes, la longitud de los elementos de datos, elrango y la sensatez de los datos, y que no haya valores inváli-dos. Los datos de entrada también se pueden comparar con losdatos almacenados para fines de validación. Una vez que seintroducen datos numéricos, se pueden verificar y corregir enforma automática por medio de los dígitos de verificación y lafórmula de Luhn.Hay un orden establecido en la prueba de los datos paravalidar cada campo. También hay métodos de validación me-diante patrones que se encuentran en el diseño de la base dedatos o se incluyen en los lenguajes de programación. A lospatrones se les conoce como expresiones regulares y contienensímbolos que representan el tipo de datos que debe haber en uncampo.Los entornos de comercio electrónico nos ofrecen la opor-tunidad de mejorar la precisión de los datos. Con un énfasisapropiado en los elementos de diseño centrados en el usuario, losclientes pueden introducir sus propios datos, almacenarlos parasu uso posterior, usar los mismos datos almacenados en todo elproceso de cumplimiento del pedido y recibir retroalimentaciónen relación con las confirmaciones y actualizaciones de los pe-didos.PALABRAS CLAVE Y FRASESadministración de la cadena de suministrocaracterística de autocompletarcodificacióncódigo de autovalidacióncódigo de barrascódigo de cifradocódigo de clasificacióncódigo de derivación alfabéticacódigo de funcióncódigo de secuencia en bloquecódigo de secuencia simplecódigo de subconjunto de dígitos significativoscódigo nemónicocookiescuello de botelladiferenciadosdígito de verificaciónexpresión regularfórmula de Luhnformulario de detección de marcasidentificación por radiofrecuencia (RFID)modificableprueba de clase o composiciónprueba de comparación con datos almacenadosprueba de datos faltantesprueba de longitud de campo correctaprueba de rango o sensatezprueba de referencia cruzadaprueba de valores inválidosreconocimiento de caracteres de tinta magnética (MICR)reconocimiento óptico de caracteres (OCR)redundancia en los datos de entradateclearUnicodevalidar la entradaPREGUNTAS DE REPASO1. ¿Cuáles son los cuatro principales objetivos de la entrada de datos?2. Mencione los cinco propósitos generales de codificar los datos.3. Defina el término código de secuencia simple.4. ¿Cuándo puede ser útil un código de derivación alfabética?5. Explique lo que se logra con un código de clasificación.6. Defina el término código de secuencia en bloque.7. ¿Cuál es el tipo más simple de código para ocultar información?8. ¿Cuáles son los beneficios de usar un código de subconjunto de dígitos significativos?9. ¿Cuál es el propósito de usar un código mnemónico para los datos?10. Defina el término código de función.11. Mencione los ocho lineamientos generales para una codificación apropiada.12. ¿Qué son los datos modificables?13. ¿Qué son los datos de diferenciación?14. ¿Cuál es una manera específica de reducir la redundancia de los datos que se van a introducir?15. Defina el término cuello de botella según su aplicación en la entrada de datos.16. ¿Cuáles son las tres funciones repetitivas de la entrada de datos que una computadora puede realizar con más eficienciaque un operador de entrada de datos?17. Mencione seis métodos de entrada de datos.18. Mencione los tres principales problemas que pueden ocurrir con las transacciones de entrada.19. Defina RFID. ¿Cuáles son las diferencias entre las etiquetas RFID activas y pasivas?20. Mencione dos ejemplos del uso de etiquetas RFID en la administración de procesos o de inventario en entornos deventas al menudeo o centros al cuidado de la salud.21. ¿Cuáles son las ocho pruebas para validar los datos de entrada?22. ¿Qué prueba verifica si los campos de datos se llenaron correctamente con números o letras?www.xlibros.com
CAPÍTULO 15 • DISEÑO DE PROCEDIMIENTOS PRECISOS DE ENTRADA DE DATOS 50923. ¿Qué error común no es detectado por la fórmula de Luhn?24. ¿Qué prueba no permite que un usuario introduzca una fecha tal como octubre 32?25. ¿Qué prueba asegura la precisión en los datos mediante la incorporación de un número en el mismo código?26. Mencione cuatro mejoras en la precisión de los datos que pueden ofrecer las transacciones que se realizan a través desitios Web de comercio electrónico.27. ¿Qué es Unicode y cómo se utiliza?28. ¿Cuál es el proceso para validar los datos que se introducen en los campos?29. ¿Qué es una expresión regular?PROBLEMAS1. Una pequeña universidad privada especializada en programas de graduados necesita llevar el registro de la lista deestudiantes que a) hacen solicitud, b) son aceptados y c) se inscriben en la universidad. Por cuestiones de seguridad, launiversidad también debe enviar un informe al gobierno con una lista de los estudiantes extranjeros que se inscriben perono se registran. Sugiera un tipo de código para este fin y proporcione un ejemplo de su uso en la universidad, en dondese demuestre si es apropiado o no. ¿Cuáles son sus ventajas?2. Las Ardillas de la Universidad Central Pacific han estado usando un código de secuencia simple para llevar el registro delos que poseen abonos de temporada y los fanáticos que no poseen abonos de temporada de todos sus programasdeportivos. Se han producido varias confusiones desagradables.Sugiera en un párrafo un esquema de codificación distinto que ayude a identificar en forma única a cada abonado yexplique cómo podrá este esquema evitar las confusiones.3. El código utilizado por una tienda de helados para ordenar sus productos es 12DRM215-220. Este código se descifra dela siguiente manera: 12 representa la cuenta de artículos en la caja, DRM representa a unas paletas de hielo llamadas“Dreamcicles” (un tipo específico de novedad en el ámbito de los helados) y 215-220 indica toda la clase completa deproductos bajos en grasa con los que cuenta el distribuidor.a. ¿Qué tipo de código se utiliza? Describa el propósito detrás de cada parte (12, DRM, 215-220) del código.b. Construya una entrada codificada usando el mismo formato y la misma lógica para una novedad en los heladosconocida como Pigeon Bars, que vienen en un paquete de seis y no son bajos en grasa.c. Construya una entrada codificada usando el mismo formato y la misma lógica para una novedad en los heladosconocida como Airwhips, que viene en un paquete de 24 y es un producto bajo en grasa.4. Los operadores de entrada de datos en la empresa Michael Mulheren Construction han estado cometiendo errores alintroducir los códigos para los productos de recubrimientos residenciales, que son los siguientes: U  estUco, A Aluminio, R  ladRillo, M  Masonite, EZ  masonite esmaltado tipo EZ color-lok, N  recubrimiento de maderaNatural, PI  acabado con PIntura, SH  SHake SHingles. Sólo se permite un código por dirección.a. Haga una lista de los posibles problemas con el sistema de codificación que podrían estar provocando entradas conerror. (Sugerencia: ¿Son las clases mutuamente excluyentes?).b. Desarrolle un código mnemónico que ayude a los operadores a comprender lo que están introduciendo para mejorarsu precisión.c. ¿Cómo rediseñaría las clases para los materiales de recubrimiento? Responda en un párrafo.5. A continuación le mostramos un código para un producto en una extensa línea de cosméticos: L02002Z621289. La Lsignifica que es un lápiz labial, 0 significa que se introdujo sin barniz de uñas complementario, 2002 es un código desecuencia que indica el orden en el que se produjo, Z es un código de clasificación que indica que el producto eshipoalergénico y 621289 es el número de la planta (hay 15 plantas) donde se produce el producto.a. Critique el código mediante una lista de las características que podrían provocar una entrada de datos imprecisa.b. El diseñador Brian d’Arcy James es propietario de la empresa de cosméticos que utiliza este esquema decodificación. Con un interés continuo en el nuevo diseño, Brian está dispuesto a considerar un código más eleganteque codifique la misma información de una mejor manera. Rediseñe el esquema de codificación y proporcione unaclave para su trabajo.c. Escriba un enunciado para cada cambio que haya sugerido, indicando cuál problema de entrada de datos (delproblema 5a) eliminará ese cambio.d. El Sr. d’Arcy James está encantado con su trabajo. Dice que a la empresa le gustaría contratarlo para que les ayudaraa expandir su actividad comercial para vender maquillaje para teatro (las obras como Wicked y Shrek con ochofunciones por semana usan mucho maquillaje color verde). Agregue los nuevos códigos que sean necesarios para elesquema de codificación que sugirió en el inciso b y proporcione una clave para su trabajo.6. La empresa de cosméticos de d’Arcy James requiere que sus vendedores usen computadoras notebook para introducirlos pedidos de las tiendas departamentales (sus mayores clientes). Después esta información se transmite a losalmacenes y los pedidos se envían según el orden en el que hayan llegado. Por desgracia las tiendas están conscientes deesta política y son muy competitivas en cuanto a cuál de ellas ofrecerá primero un nuevo producto de d’Arcy James.Muchos vendedores han tomado el camino oscuro y han persuadido a los vendedores para que falsifiquen las fechas desus pedidos en los formularios de ventas, de manera que parezcan haberse hecho antes.a. Este problema está creando una gran confusión en el almacén. No es viable disciplinar al personal involucrado.¿Cómo se puede usar la computadora del almacén para certificar la fecha en que se realizan los pedidos? Expliqueen un párrafo.www.xlibros.com
510 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADb. Los vendedores se quejan de que tienen que ignorar su verdadero trabajo de vender para poder teclear los datos.Mencione los elementos de datos relacionados con las ventas de cosméticos a las tiendas que se deban almacenar yrecuperar de la computadora central, en vez de tener que teclearlos en cada pedido.c. Describa en uno o dos párrafos cómo los códigos de barras podrían ayudar a resolver el problema del inciso 6b.7. Mencione el mejor método de entrada de datos y la razón por la que lo eligió para cada una de las siguientes seissituaciones:a. El documento de respuesta para una empresa de servicios públicos que desea la notificación de un cambio en ladirección del cliente.b. Sólo se pueden recuperar datos si hay una identificación de máquina positiva de la parte que solicita los datos.c. No hay suficiente personal capacitado disponible para interpretar respuestas largas por escrito; se enviaron muchosformularios que capturan respuestas a exámenes de opción múltiple; es necesario un alto nivel de confiabilidad; nose requiere un tiempo de respuesta rápido.d. Se estableció un almacén para una operación de venta de discos compactos con descuento; los botes estánidentificados con la información sobre el precio, pero los discos individuales no; hay pocos operadoresexperimentados disponibles para introducir los datos de los precios.e. Centro de control de venenos que mantiene una base de datos extensa de venenos y antídotos; necesita una manerade introducir datos sobre el veneno ingerido; también hay que introducir el peso, edad y condición física general dela víctima cuando una persona llama al número de atención gratuito del centro para obtener consejos de emergencia.f. Un consumidor compró en línea un DVD con su tarjeta de crédito.8. Ben Coleman, uno de los miembros de su equipo de análisis de sistemas, lo sorprende al afirmar que cuando un sistemautiliza una prueba para la longitud de campo correcta, es redundante incluir también una prueba de rango o sensatez.Describa en un párrafo un ejemplo que demuestre que Ben está equivocado en este caso.9. Varios vendedores se reunieron y empezaron a emitir una tarjeta de crédito “estatal” que sólo es válida en las tiendas ensu estado. Como cortesía, se permite a los vendedores transcribir el número de cuenta de 15 dígitos a mano (después deobtenerlo de la oficina de contabilidad) si el cliente no lleva consigo la tarjeta. El único problema con las cuentas que losvendedores han detectado hasta ahora es que algunas veces se aceptan números de cuenta erróneos en el sistema decómputo, lo cual provoca que se envíe una factura a una cuenta inexistente.a. ¿Qué tipo de prueba de validez resolvería el problema? ¿Cómo? Responda en un párrafo.b. Sugiera un método de entrada de datos alternativo que podría solucionar este problema por completo.10. Los siguientes son números de piezas: 238902, 238933, 239402, 235693, 235405, 239204, 240965. Desarrolle un dígitode verificación para estos números mediante el uso de multiplicadores 1-3-1-3-1 y módulo 11. Use el método quepresentamos en este capítulo. ¿Por qué algunos números tienen el mismo dígito de verificación?11. Desarrolle un sistema de dígitos de verificación para los números de piezas del problema 10; use multiplicadores 5-4-3-2-1 y módulo 11.12. Desarrolle un sistema de dígitos de verificación para los números de piezas del problema 10; use la fórmula de Luhn.13. ¿Por qué un sistema de dígitos de verificación tal como 1-1-1-1-1 no funciona tan bien como otros métodos? ¿Quéerrores no detectaría?14. Defina una expresión regular para validar cada uno de los siguientes casos:a. Un código postal de los EE.UU., que debe tener cinco dígitos seguidos de un guión corto opcional y de otros cuatrodígitos.b. Un número telefónico en el formato (aaa) nnn-nnnn, en donde aaa representa el código de área y las n representandígitos.c. Una fecha en la forma de día-mes-año, en donde el mes es un código de tres letras y el año es de cuatro dígitos.Debe haber un guión corto para separar el día del mes y otro para separar el mes del año.d. El código de derivación alfabética que se muestra en este capítulo para el suscriptor de una revista. El formato es99999XXX9999XXX, en donde X representa a una letra y 9 representa a un número.15. Para los siguientes códigos, defina los criterios de validación (puede haber varias verificaciones para cada campo) y elorden en el que evaluaría cada una de las condiciones.a. Un número de tarjeta de crédito introducido en un formulario Web: El cliente seleccionó el tipo de tarjeta decrédito de una lista desplegable.b. Un número de pieza en una tienda de ferretería: El número de pieza es un código complejo, en donde el primerdígito representa el departamento (como artículos del hogar, automotriz, etcétera) y el número debería ser deautoverificación. Hay siete departamentos distintos.c. La fecha en que se colocó el matasellos en un libro al momento de devolverlo a una biblioteca en línea: Sedebe incluir una copia del recibo del cliente con el libro. Los libros devueltos se deben sellar en un plazo no mayor a30 días después de la fecha de compra.d. El código hablado de un lenguaje utilizado en un sitio Web: (Sugerencia: Busque en la Web los códigos delenguajes estándar.).e. El número de licencia de un conductor, compuesto de varias partes: El mes de nacimiento de la persona, elcumpleaños y el año de nacimiento, no necesariamente juntos; un código que representa el color de ojos y unnúmero de secuencia. La licencia de conductor contiene la fecha de nacimiento, el color de ojos y de pelo, así comoel nombre y dirección de la persona.f. El código postal canadiense: El formato es X9X 9X9 (X es cualquier letra, 9 es cualquier número).g. Códigos de equipaje de aerolíneas: Como LAX para Los Ángeles o DUB para Dublín.www.xlibros.com
CAPÍTULO 15 • DISEÑO DE PROCEDIMIENTOS PRECISOS DE ENTRADA DE DATOS 511h. Una clave de producto utilizada para desbloquear el software comprado: La clave consiste en cuatro grupos decinco caracteres cada uno. El primer grupo debe tener dos letras seguidas de tres números; el segundo grupo debecontener dos números seguidos de tres letras; el tercer grupo debe contener dos letras, cada una de la A a la G,seguidas de tres números del uno al cuatro; y el último grupo debe contener una letra, E, G o C, dos dígitos convalores de cuatro a siete y dos letras, ya sean A, B o C. (Sugerencia: Un patrón puede ser la mejor forma de validarla clave del producto.).PROYECTOS EN GRUPO1. Lea junto con los miembros de su grupo la Oportunidad de consultoría 15.3, “Entrar o no entrar: esa es la cuestión” quepresentamos anteriormente en este capítulo. Diseñe un sistema de entrada de datos apropiado para Elsinore Industries. Eldiseño de su grupo debe hacer énfasis en la eficiencia y precisión. Además, debe haber distinción entre los datosmodificables y los datos que indican la diferencia entre un elemento introducido y todos los demás. Dibuje los prototiposde las pantallas necesarias para explicar lo que recomienda.2. Divida su grupo en analistas y empleados de Elsinore Industries para un juego de roles. Los analistas deben presentar elnuevo sistema de entrada de datos, completo con pantallas de prototipos. Pida a los empleados de Elsinore unaretroalimentación sobre el diseño.3. Escriba un breve párrafo para describir cómo mejorar el diseño original de entrada de datos con base en los comentariosrecibidos.BIBLIOGRAFÍA SELECCIONADADavis, G. B. y M. H. Olson, Management Information Systems, Conceptual Foundations, Structure, and Development, 2ª. Edi-ción. Nueva York: McGraw-Hill, 1985.Lamming, M. G., P. Brown, K. Carter, M. Eldridge, M. Flynn, G. Louie, P. Robinson y A. Sellan. “The Design of a HumanMemory Prosthesis”. Computer Journal, Vol. 37, 1994, pp. 153-163.Lee, Y. M., F. Cheng y Y. T. Leung. “Exploring the Impact of RFID on Supply Chain Dynamics”. En Proceedings of the 2004Winter Simulation Conference, pp. 1145-1152. Editado por R. G. Ingalls, M. D. Rossetti, J. S. Smith y B. A. Peters.MacKay, D. J. Information Theory, Inference and Learning Algorithms. Cambridge, Reino Unido: Cambridge University Press,2004.Miller, G. A. “The Magical Number Seven, Plus or Minus Two: Some Limits on Our Capability for Processing Information”.Psychological Review, Vol. 63, Núm. 2, marzo de 1956, pp. 81-97.Newman, W. N., M. G. Lamming y M. Lamming. Interactive System Design. Reading, MA: Addison-Wesley Longman Publis-hing Co., 1995.Niederman, F., R. G. Mathieu, R. Morley e I. Kwon. “Examining RFID Applications in Supply Chain Management”, Commu-nications of the ACM, Vol. 50, Núm. 7, julio de 2007, pp. 92-101.Owsowitz, S. y A. Sweetland. “Factors Affecting Coding Errors”, Rand Memorandum RM-4346-PR. Santa Monica, CA: RandCorporatioin, 1965.Robey, D. y W. Taggart. “Human Processing in Information and Decision Support Systems”. MIS Quarterly, Vol. 6, Núm. 2,junio 1982, pp. 61-73.Ryder, J. “Credit Card Validation Using LUHN Formula”. www.freevbcode.com. Último acceso en 26 de agosto de 2009.www.xlibros.com
512 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADE P I S O D I O 1 5CASO DE LA CPUALLEN SCHMIDT, JULIE E. KENDALL Y KENNETH E. KENDALLIntroducir en forma naturalEl martes al mediodía Anna y Chip tienen su sesión semanal de revisión de análisis y diseño. Chip agita sus manos hacia unagran pila de documentos que están organizados en forma ordenada en una mesa grande. “No puedo creer que casi terminemoscon el diseño de este sistema”, comenta. “Ha sido un largo proceso, pero apuesto a que obtuvimos la retroalimentación suficientecomo para asegurar un sistema de alta calidad. Todo lo que queda es el diseño de los procedimientos de entrada de datos y es-taremos listos para empezar a empaquetar las especificaciones para los programadores”.“Así es”, le responde Anna, “se acerca el fin. Empecemos por examinar el diseño de la porción del sistema correspondientea la entrada”.“El programa AGREGAR SOFTWARE (ADD SOFTWARE) está en línea”, observa Chip. “El operador tendrá que veri-ficar visualmente cada transacción. Después de editar todos los campos de datos para asegurar la precisión, aparecerá un men-saje en la parte inferior de la pantalla para pedir a los operadores que verifiquen la precisión de los datos en la pantalla, loscomparen con el formulario y hagan clic en el botón Guardar registro (Save Record) si todo está correcto. Los operadorestendrán la oportunidad de realizar cambios si los datos se teclean en forma incorrecta”.Hay que editar cada campo de datos para mantener la precisión. Chip comenta: “A la larga es mejor editar por completolos programas para asegurar que sean precisos, en vez de descubrir que se almacenaron los datos incorrectos en los archivosmaestros y se imprimieron en los informes”.La estrategia para editar los campos es verificar los datos en el siguiente orden:1. Sintaxis (si los datos son numéricos o alfabéticos) y la longitud de los datos. Un ejemplo es el NUMERO INVENTARIOHARDWARE (HARDWARE INVENTORY NUMBER), que debe tener ocho caracteres de longitud y ser numérico.2. El contenido del campo, incluyendo rango, límite y valores para los datos. Al validar la FECHA COMPRA (DATE PURCHA-SED), el mes debe ser de 1 a 12. Esta verificación debe ocurrir sólo después de haber verificado que el mes sea numérico.3. Verificaciones de referencias cruzadas entre dos o más elementos de datos. Para verificar la porción de FECHA COMPRAcorrespondiente al día, se utilizará una tabla del número de días posibles en cada mes para un límite superior. Esta tabla nose podría utilizar si el mes no estuviera entre 1 y 12. Los dígitos de verificación son otro ejemplo de una edición de refe-rencias cruzadas.4. Las ediciones externas, como leer un archivo para verificar si el registro que se va a agregar no existe ya en el archivo. Leerregistros es más lento que editar, lo cual se lleva a cabo en memoria principal y debe ocurrir sólo después de que los datospasen con éxito todas las demás pruebas de edición.Se introdujeron los criterios de edición en la pantalla de visualización Repositorio de elementos (Element Repository)de Visible Analyst a medida que se agregaban elementos al diseño. Estos elementos incluyen criterios de edición simples yverificación de tablas. Se puede usar el área Notas (Notes) para introducir criterios de edición. La entrada NUMERO INVEN-TARIO HARDWARE (HARDWARE INVENTORY NUMBER) incluye una referencia para usar el método módulo 11 deverificar la porción del número correspondiente al dígito de verificación. Además, al agregar una nueva computadora, hay queleer el archivo MAESTRO DE COMPUTADORAS para asegurar que no exista ya un registro con el mismo NUMERO INVEN-TARIO HARDWARE.Varios elementos tienen áreas de Notas referentes a las tablas, así como entradas para los códigos en el área Valores ysignificados (Values and Meanings). Un ejemplo es el elemento SISTEMA OPERATIVO (OPERATING SYSTEM). “Produ-ciré una lista de las tablas que vamos a requerir”, ofrece Anna. Para producir la lista hay que buscar en la página Web Reposi-torio (Repository) o usar la herramienta Consulta de informes (Report Query) de Visible Analyst. Se imprimirá una lista detodos los elementos que contienen notas empezando con “Tabla de códigos (Table of codes)”. En la lista se incluyen Imagen(Picture) y Longitud (Length) para mostrar la sintaxis del código. Con esta lista se crean tablas.Cada tabla de códigos se define mediante tablas de Microsoft Access. Chip y Anna pasan tiempo trabajando en las tablas. Seselecciona un código mnemónico para SISTEMA OPERATIVO y para representar la CATEGORIA SOFTWARE (SOFTWARECATEGORY) debido a que facilita el trabajo a los usuarios. “Creo que un esquema de codificación de subconjunto de dígitossignificativos sería el mejor para codificar los edificios del campus”, comenta Chip. Anna está de acuerdo. “Eso es bueno, Chip. Elprimer dígito para la ubicación del campus y los otros dos dígitos para representar edificios individuales en el campus”.Chip diseña los códigos utilizados para la tabla SISTEMA OPERATIVO. La pantalla de Microsoft Access se muestra enla figura E15.1. Se utilizan dos columnas para definir los códigos. La columna izquierda contiene el código y la columna dere-cha contiene su significado. Esas entradas se pueden modificar y es posible agregar nuevas entradas, con lo cual se obtieneflexibilidad en el sistema final.“He aquí la tabla CATEGORIA SOFTWARE que creé”, dice Anna. “Esta tabla se puede actualizar con facilidad, a medidaque la universidad desarrolle y adquiera nuevo software. Es sorprendente la rapidez con la que puede cambiar el software”.“Ése es un valioso componente del sistema”, comenta Chip. “Provee consistencia para todos los códigos y sus significados”.Chip y Anna terminan su trabajo la siguiente mañana aproximadamente a las 11:30. Miran felizmente alrededor de la salay vuelven a examinar con frecuencia el diseño final. Finalmente terminan los meses de análisis, trabajo de diseño, consultas conlos usuarios y una cuidadosa adherencia a los estándares.“Me siento realmente bien con este proyecto”, dice Anna.Chip asiente, “Estoy orgulloso de la calidad que aportamos”.www.xlibros.com
CAPÍTULO 15 • DISEÑO DE PROCEDIMIENTOS PRECISOS DE ENTRADA DE DATOS 513FIGURA E15.1TABLA DE CODIGOSSISTEMA OPERATIVO(OPERATING SYSTEM TABLEOF CODES) definida medianteMicrosoft Access.EJERCICIOSE-1. Modifique e imprima los siguientes elementos con criterios de edición en el área Notas (o Valores y significados paracódigos específicos). Puede encontrarlos en la página Web Repositorio o en el repositorio de Visible Analyst.E-2. Modifique e imprima los siguientes elementos con los criterios de edición colocados en el área Notas:Elemento Criterio de edicióna. CATEGORIA SOFTWARE Tabla de códigos:Código Categoría Software (Software Category Code)b. CODIGO NIVEL CAPACITACION CURSO(COURSE TRAINING LEVEL CODE)B - Principiante; I - Intermedio;A - Avanzadoc. SISTEMA OPERATIVO (OPERATING SYSTEM) W - Windows Vista Ultimate;B - Windows Vista Business;U - Unixa. Elemento: NUMERO INVENTARIO SOFTWARE (SOFTWARE INVENTORYNUMBER)Notas: Hay que verificar un dígito de verificación módulo 11 al introducir elnúmero. El programa AGREGAR SOFTWARE (ADD SOFTWARE) creael dígito de verificación.El programa AGREGAR SOFTWARE también debe verificar el archivoMAESTRO DE SOFTWARE (SOFTWARE MASTER) para asegurar queno exista ya un registro con el mismo número de inventario.b. Elemento: FECHA COMPRA (DATE PURCHASED)Notas: Verificar que FECHA COMPRA sea menor o igual que la fecha actual.c. Elemento: CANTIDAD RECIBIDA (QUANTITY RECEIVED)Notas: Verificar que CANTIDAD RECIBIDA sea menor o igual que CANTIDADORDENADA (QUANTITY ORDERED).d. Elemento: VERSION ACTUALIZACION SOFTWARE (SOFTWARE UPGRADEVERSION)Notas: Asegurar que VERSION ACTUALIZACION (UPGRADE VERSION) seamayor que la versión actual.e. Elemento: SEGUNDO DISCO DURO (SECOND HARD DRIVE)Notas: SEGUNDO DISCO DURO sólo puede existir si hay una entrada paraDISCO DURO (HARD DRIVE).www.xlibros.com
514 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD1 Campus Central2 Campus Waterford3 Campus HillsideE-3. Después de hablar con Dot Matricks y Mike Crowe, es aparente que los códigos del campus deben tener capacidad deordenamiento para instalar hardware y software, así como para crear hojas de inventario. Use Microsoft Access paramodificar e imprimir la tabla CODIGOS UBICACION CAMPUS (CAMPUS LOCATION CODES). El primer dígitorepresenta la ubicación del campus. Los valores son los siguientes:Los siguientes tres dígitos representan los edificios en el campus, con los siguientes códigos de edificios:Use una combinación (de su elección) de códigos y edificios del campus para construir la tabla final de códigos. Incluyael significado del código.Los ejercicios en los que se antepone un icono www indican material de valor agregado disponible en el sitio Web www.pearsonhighered.com/kendall. Los estudiantes pueden descargar un archivo de ejemplo de Microsoft Visio, Visible Analyst, Microsoft Project o Microsoft Access quepueden usar para completar los ejercicios.001 Administración002 Admisiones003 Agricultura004 Astronomía005 Negocios006 Ingeniería Química007 Ciencias Computacionales008 Educación009 Ingeniería010 Estudios Ambientales011 Geología012 Leyes013 Biblioteca014 Matemáticas015 Medicina016 Física017 Psicología018 Zoologíawww.xlibros.com
515C A P Í T U L O 1 6Aseguramiento eimplementación de la calidadOBJETIVOS DE APRENDIZAJEAl completar este capítulo usted podrá:1. Reconocer la importancia de los usuarios y analistas que asumen el enfoque de calidadtotal para mejorar la calidad del diseño y mantenimiento del software.2. Comprender la importancia de los procesos de documentación, prueba, mantenimiento yauditoría.3. Entender cómo la arquitectura orientada a los servicios y la computación en nube estáncambiando la naturaleza del diseño de sistemas de información.4. Diseñar programas de capacitación apropiados para usuarios del nuevo sistema.5. Reconocer las diferencias entre las estrategias de conversión físicas; recomendar unaapropiada para un cliente.6. Abordar cuestiones de seguridad, preparación para desastres y recuperación de desastrespara los sistemas tradicionales y basados en Web.7. Comprender la importancia de evaluar el nuevo sistema y recomendar una técnica deevaluación adecuada a un cliente.Desde hace tiempo, las empresas se preocupan por la calidad de la mismaforma en que los analistas de sistemas se preocupan por el análisis y diseñode los sistemas de información. El usuario del sistema de información es elfactor individual más importante para establecer y evaluar su calidad. Esmucho menos costoso corregir problemas en las primeras etapas que esperara que un problema genere crisis o quejas de los usuarios. Los tres métodospara el aseguramiento de calidad a través de la ingeniería de software son: 1) afianzar un asegu-ramiento de calidad total al diseñar sistemas y software con una metodología modular descen-dente (arriba-abajo otop-down); 2) documentar el software con las herramientas apropiadas,y 3) probar, mantener y realizar auditorías en el software.Al proceso de asegurar que el sistema de información sea funcional y después permitir a losusuarios hacerse cargo de su operación para usarlo y evaluarlo se le conoce como implementación.Este proceso implica ceder el poder de cómputo y la responsabilidad a los usuarios de la empresamediante la ayuda de la computación distribuida, la computación en nube y la arquitectura orien-tada a servicios; también involucra la capacitación de los usuarios y asegurar que cada uno deellos comprenda sus nuevos roles dentro del nuevo sistema de información. Adicionalmente, laimplementación abarca la elección de una estrategia de conversión, proveer las medidas apropia-das de seguridad, privacidad y planes contra desastres, y la evaluación del sistema de informaciónnuevo o modificado.www.xlibros.com
516 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADLA METODOLOGÍA DE ADMINISTRACIÓN DE LA CALIDAD TOTALLa administración de la calidad total (TQM) es esencial en todos los pasos de desarrollo de sistemas. De acuerdocon Evans y Lindsay (2004), los principales elementos de la TQM tienen sentido sólo cuando ocurren en un con-texto organizacional que apoye un esfuerzo de calidad integral. Es en este contexto en el que se unen los elemen-tos de enfoque hacia el cliente, la planeación y el liderazgo estratégico, la mejora continua, el otorgamiento depoderes y el trabajo en equipo para cambiar el comportamiento de los empleados y, en última instancia, el cursode la organización. Cabe mencionar que el concepto de calidad se ha ampliado a través de los años para reflejarun enfoque organizacional que no está orientado exclusivamente a la producción. En vez de concebir la calidadcomo el control del número de productos defectuosos producidos, ahora se considera como un proceso evolutivohacia la perfección, al cual se le conoce como administración de la calidad total.Los analistas de sistemas deben estar conscientes de los factores que impulsan el interés en la calidad. Esimportante tener en cuenta que el compromiso cada vez mayor de las empresas con la TQM se adapta extraordi-nariamente bien a los objetivos generales para el análisis y diseño de sistemas.Seis SigmaLa llegada de Seis Signa modificó el enfoque hacia la administración de la calidad. Los analistas de sistemas ylos usuarios de los sistemas necesitan estar conscientes de la existencia de Seis Sigma y aplicar algunos de losprincipios a sus proyectos de análisis de sistemas. La metodología Seis Sigma, desarrollada originalmente porMotorola en la década de 1980, es algo más que una metodología; es una cultura que se basa en la calidad. Elobjetivo de Seis Sigma es eliminar todos los defectos y se aplica a cualquier producto, servicio o proceso. En loslibros de texto de administración de operaciones, desde la década de 1970 hasta finales de siglo, el control decalidad se expresaba en términos de tres derivaciones estándar de la media, o tres sigma, lo cual equivale a cercade 67,000 defectos por millón de oportunidades. Seis Sigma implica un objetivo de no más de 3.4 defectos pormillón de oportunidades.Seis Sigma es una metodología descendente. Es necesario que un CEO adopte la filosofía y que un ejecutivosirva como campeón del proyecto. Al líder de un proyecto Seis Sigma se le denomina Cinta Negra (la metáforade Cinta Negra proviene del sistema de clasificación de capacidades en las artes marciales). Los Cintas Negrasse certifican después de haber dirigido proyectos con éxito. A los demás miembros del equipo se les denominaCintas Verdes. Las Cintas Negras son Cintas Verdes que han trabajado en muchos proyectos y están disponiblescomo recurso para los equipos de los proyectos.Podemos sintetizar a Seis Sigma como una metodología (la figura 16.1 muestra los pasos de Seis Sigma);sin embargo, es mucho más que sólo eso: es una filosofía y una cultura. Para obtener más información sobre SeisSigma y la administración de la calidad, visite el sitio Web del Juran Center en la Carlson School of Management,University of Minnesota, Twin Cities (ww.csom.umn.edu). En 2002 el Juran Center emitió una declaración deapoyo y fomento de la calidad. Los autores de este libro firmamos el estatuto en ese entonces y estamos comple-tamente de acuerdo en sus principios.El desaparecido Joseph M. Juran dijo: “Toda mejora de la calidad ocurre proyecto tras proyecto y de nin-guna otra manera” (Juran, 1964). Los analistas de sistemas, los gerentes de proyectos y los usuarios deberíantomar esto muy en serio.Responsabilidad de la administración de la calidad totalHablando en específico, gran parte de la responsabilidad por la calidad de los sistemas de información recaeen los usuarios del sistema y la gerencia. Deben ocurrir dos cosas para que la TQM se convierta en una realidad conlos proyectos de sistemas. En primer lugar debe existir el soporte organizacional completo de la gerencia, algoconsiderablemente distinto al simple hecho de promocionar el ardid administrativo más reciente. Dicho soporteimplica establecer un contexto para que el personal administrativo considere con seriedad cómo afecta la calidadtanto de la información como de los sistemas de información en su trabajo.Es necesario que el analista y los usuarios de la empresa se comprometan con la calidad lo antes posiblepara lograr el objetivo de ésta. Este compromiso se ejerce como resultado de un esfuerzo de ritmo uniforme haciala calidad en todo el ciclo de vida de desarrollo de sistemas; además supone un fuerte contraste con el hecho detener que invertir mucho esfuerzo para resolver los problemas al final del proyecto.Para lograr el apoyo de la organización en relación con la calidad en los sistemas de información administra-tivos, debemos proveer tiempo laboral para los círculos de calidad de sistemas de información (IS), que consistenen seis a ocho colegas de la organización, cada uno con la responsabilidad específica de definir cómo mejorar lossistemas de información y cómo implementar las mejoras.A través del trabajo en los círculos de calidad de IS o por medio de otros mecanismos en operación, la ge-rencia y los usuarios deben desarrollar lineamientos para los estándares de calidad de los sistemas de informa-www.xlibros.com
CAPÍTULO 16 • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD 517FIGURA 16.1Todo analista de sistemas debecomprender la metodología yfilosofía de Seis Sigma.ción. Es preferible que se reestructuren los estándares cada vez que el equipo de análisis de sistemas propongaformalmente un nuevo sistema o una modificación importante al sistema actual.No es fácil elaborar estándares, pero es posible y ya se ha hecho antes. Parte del trabajo del analista de siste-mas es alentar a los usuarios a cristalizar sus expectativas sobre los sistemas de información y sus interaccionescon éstos.Después es necesario comunicar los estándares de calidad departamentales por medio de la retroalimenta-ción para el equipo de análisis de sistemas. A menudo, el equipo se sorprende de lo que se ha desarrollado. Por logeneral las expectativas son menos complejas de lo que los analistas experimentados saben que se podría hacercon un sistema. Además, cabe la posibilidad de que las cuestiones humanas que el equipo de analistas pasó poralto o subestimó se consideren mucho muy urgentes en los estándares de calidad de los usuarios. Al hacer quelos usuarios se involucren en delinear los estándares de calidad para los sistemas de información, el analista po-drá evitar costosos errores en el desarrollo de sistemas no deseados o innecesarios.Recorrido estructuradoUna de las acciones administrativas de calidad más robusta que el equipo de análisis de sistemas puede llevara cabo es realizar recorridos estructurados de manera rutinaria. Los recorridos estructurados son una manera deusar colegas revisores para que supervisen la programación del sistema y su desarrollo en general, señalen losproblemas y permitan que el programador o analista responsable de esa parte del sistema realicen las modifica-ciones apropiadas.Los recorridos estructurados involucran por lo menos a cuatro personas: la persona responsable de la partedel sistema o subsistema que se va a revisar (un programador o analista), un coordinador del recorrido, un colegaprogramador o analista y un colega que haga las anotaciones sobre sugerencias.Cada persona que asiste a un recorrido tiene que desempeñar un papel especial. El coordinador está ahípara asegurar que los otros se adhieran a los roles que tienen asignados y para asegurar que se realicen todas lasactividades programadas. El programador o analista está ahí para escuchar y no para defender su opinión, racio-nalizar un problema o argumentar. El colega programador o analista está presente para señalar los errores o pro-blemas potenciales, no para especificar cómo se deberían corregir. El que toma notas registra lo que se dice, demanera que los otros presentes puedan interactuar sin ningún impedimento.Los recorridos estructurados se adaptan bien en una metodología de administración de la calidad total cuandose realizan en todo el ciclo de vida del desarrollo de sistemas. El tiempo que requieren debe ser poco (entre me-6Estandarizar loscambios3Analizar lascausas1Definir elproblema7Sacarconclusiones2Observar elproblemaSeis Sigma4Actuar en basea las causas5Estudiar losresultadoswww.xlibros.com
518 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADdia y una hora a lo más), lo cual significa que deben estar bien coordinados. La figura 16.2 muestra un formula-rio útil para organizar el recorrido estructurado e informar sus resultados. Como los recorridos toman tiempo, noes conveniente abusar de ellos.Usar recorridos estructurados es una forma de obtener (y después actuar con base en) una valiosa retroali-mentación desde una perspectiva que no tenemos nosotros. Al igual que con todas las medidas de aseguramientode calidad, el objetivo de los recorridos es evaluar el producto de manera sistemática en forma continua, en vez deesperar a que se complete el sistema.Diseño y desarrollo de sistemas descendenteMuchas empresas introdujeron primero los sistemas de cómputo en el nivel más bajo de la organización. Ahí esdonde se puede observar mejor los beneficios inmediatos de la computarización, además de que son más efectivosen costo. A menudo, las empresas asumen este enfoque en el desarrollo de sistemas al adquirir, por ejemplo, soft-ware COTS para contabilidad, un paquete distinto para la calendarización de producción y otro para marketing.Cuando se termina la programación interna con una metodología ascendente (abajo-arriba o bottom-up), esdifícil interconectar los subsistemas de manera que funcionen uniformemente como un sistema. Cuesta muchocorregir los errores de interfaz y muchos de ellos no se descubren sino hasta que se completa la programación,cuando los analistas tratan de cumplir con una fecha de entrega al ensamblar todo el sistema. En este punto haypoco tiempo, presupuesto o paciencia por parte del usuario para la depuración de las delicadas interfaces que seignoraron.Aunque cada pequeño subsistema parece obtener el software funcional que necesita, al considerar todo elsistema hay varias limitaciones con respecto a la metodología descendente. Una de ellas es que se duplica el es-fuerzo en la compra del software e incluso al introducir los datos. Otra es que se introducen datos sin valor en elsistema. La tercera desventaja (y tal vez la más grave) de la metodología descendente es que, aunque se hayancumplido muchas de las necesidades de los usuarios, no se están considerando los objetivos de la organizaciónen general y, por ende, no se pueden cumplir.El diseño descendente permite al analista de sistemas establecer primero los objetivos de la organización,además de establecer cómo se deben cumplir de la mejor manera en un sistema en general. Después el analistadivide ese sistema en subsistemas y sus requerimientos.O P O R T U N I D A D D E C O N S U L T O R Í A 1 6 . 1La calidad de MIS no se pone a prueba“Merle, ven aquí y echa un vistazo a estos informes de fin desemana”, suplica Portia. Como una de los gerentes en la fuerza de tra-bajo de IS/comité de aseguramiento de calidad de seis personas,Portia ha estado analizando para su departamento de marketing lasalida del sistema que el prototipo ha estado produciendo. El equipode analistas de sistemas le pidió que revisara la salida.Merle Chant camina hacia el escritorio de Portia y da un vistazoa los folletos informativos que Portia sostiene. “¿Por qué, qué estámal?”, pregunta. “A mí me parecen bien. Creo que estás tomandodemasiado a pecho esto de la fuerza de trabajo. Se supone que debe-mos realizar también nuestro otro trabajo, ¿no?”. Merle voltea y re-gresa a su escritorio ligeramente perturbado por la interrupción.“Ten un poco de piedad, Merle. Realmente es ridículo aguan-tar estos informes así como están. No puedo encontrar nada de loque necesito y se supone que debo decir a todos los demás en eldepartamento qué parte del informe deben leer. Estoy decepcio-nada. Este informe no sirve. No tiene ningún sentido para mí. Es unrefrito de la salida que estamos obteniendo ahora. En realidad, se vepeor. Voy a llevar esto a la siguiente reunión de la fuerza de trabajo”,Portia proclama con insistencia.Merle voltea a verla y dice: “La calidad es su responsabilidad,Portia; si el sistema no nos da buenos informes, lo corregirán a lahora de implementarlo. Todo lo que estás haciendo es causar con-troversia. Actúas como si en realidad tomaran en cuenta nuestraentrada. No les daría la hora del día, mucho menos haría su trabajopor ellos. Son muy inteligentes, déjalos que averigüen lo que nece-sitamos”.Portia mira a Merle sin expresión y después empieza a eno-jarse un poco. “Hemos estado en la fuerza de trabajo por cuatrosemanas”, dice. “Estuviste en cuatro reuniones. Somos los que co-nocen el negocio. La idea en sí de la TQM es decirles lo que nece-sitamos, con qué estamos satisfechos. Si no les decimos lo quenecesitamos, entonces no nos podemos quejar. Mencionaré esto lapróxima vez que nos reunamos”.¿Qué tan efectivo cree que será Merle para comunicar sus es-tándares de calidad al equipo de análisis de sistemas y a los miem-bros de la fuerza de trabajo de IS? Responda en un párrafo. Si losanalistas de sistemas pueden percibir la falta de voluntad de Merlepara trabajar con la fuerza de trabajo en el desarrollo de estándaresde calidad, ¿qué diría para convencerlo de la importancia de laparticipación de los usuarios en la TQM? Haga una lista de argu-mentos que soportan el uso de TQM. ¿Cómo puede responder elequipo de análisis de sistemas a los problemas que Portia está cues-tionando? Diseñe una respuesta en un párrafo.www.xlibros.com
CAPÍTULO 16 • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD 519Informe para la gerencia sobreel recorrido estructuradoNombre del proyecto:Firma del coordinador:Fecha en que se presentóel informe: / /Número de proyecto:Fecha del recorrido: / /Hora:Coordinador del recorrido:Lista de participantes:Comentarios:Acción recomendada (marque una):( ) ACEPTAR TRABAJO COMO ESTÁ( ) REVISAR TRABAJO( ) REVISAR TRABAJO Y REALIZARRECORRIDO DE SEGUIMIENTO( ) RECHAZAR TRABAJOPorción (descripción) del trabajo que se examinó:FIGURA 16.2Un formulario para documentarrecorridos estructurados; esposible realizar recorridos cadavez que se completa una porciónde código, un sistema o unsubsistema.El diseño descendente es compatible con el pensamiento sobre sistemas generales que vimos en el capítulo 2.Cuando los analistas de sistemas emplean una metodología descendente, están pensando en las interrelaciones einterdependencias de los subsistemas y la manera en que se adaptan a la organización existente. La metodologíadescendente también provee un conveniente énfasis en la sinergia o las interfaces que requieren los sistemas ysus subsistemas, lo cual no es posible en la metodología ascendente. Esto ayuda a responder la pregunta sobrecuántos equipos deben trabajar juntos para lograr sus metas.Una de las ventajas de utilizar una metodología descendente para el diseño de sistemas es evitar el caos detratar de diseñar un sistema todo a la vez. Como hemos visto, el proceso de planeación e implementación de sis-temas de información administrativa es increíblemente complejo. Tratar de implantar todos los subsistemas yejecutarlos al mismo tiempo es la vía más directa al fracaso.Una segunda ventaja de la metodología descendente en el diseño es que permite a los equipos separados deanálisis de sistemas trabajar en paralelo en subsistemas distintos pero necesarios, lo cual puede ahorrar muchotiempo. El uso de equipos para el diseño de subsistemas se adapta muy bien de manera específica a una metodo-logía de aseguramiento de calidad total.www.xlibros.com
520 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADUna tercera ventaja es que la metodología descendente evita un problema importante asociado con la meto-dología ascendente: evita que los analistas de sistemas se enreden tanto en los detalles que pierdan la visión de loque se supone debe hacer el sistema.La administración de calidad total y la metodología descendente para el diseño pueden ir de la mano. Lametodología descendente provee al grupo de sistemas una división preparada de usuarios en fuerzas de trabajo(equipos especializados de usuarios) para los subsistemas. Las fuerzas de trabajo que se establecen de esta formapueden cumplir entonces una doble función como círculos de calidad para el sistema de información adminis-trativa. De esta manera se establece la estructura necesaria para el aseguramiento de la calidad, al igual que lamotivación apropiada para hacer que el subsistema logre las metas departamentales que son importantes para losusuarios involucrados.Uso de diagramas de estructura para diseñar sistemas modularesUna vez que nos decidimos por la metodología de diseño descendente, es conveniente usar una metodologíamodular para la programación. Esta metodología implica descomponer la programación en porciones lógicas ymanejables, o módulos. Este tipo de programación funciona bien con el diseño descendente, ya que enfatiza lasinterfaces entre los módulos y no las hace a un lado hasta etapas posteriores en el desarrollo de sistemas. Lo ideales que cada módulo individual sea funcionalmente cohesivo, de manera que tenga que realizar sólo una función.El diseño de programas modulares tiene tres ventajas principales. En primer lugar, los módulos son másfáciles de escribir y depurar debido a que son prácticamente independientes. Es menos complicado rastrear unerror en un módulo, ya que no debería causar problemas en los demás.A T R A C T I V O D E L A M A CA un analista que necesite completar un recorrido estructurado le podría convenir utilizar Things, una aplicación parael iPhone de Apple. Cuando los analistas regresan a su oficina, pueden descargar la información en su versión de escri-torio. Things es simplemente otra forma de organizarse, pero es mucho más simple que OMNI-focus (que vimos en otrasección del libro).FIGURA 16.MACThings de Cultured Code.www.xlibros.com
CAPÍTULO 16 • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD 521Una segunda ventaja del diseño modular es que los módulos son más fáciles de mantener. Por lo general, lasmodificaciones se limitan a unos cuantos módulos y no se diseminan en todo un programa.Una tercera ventaja del diseño modular es que los módulos son más fáciles de comprender, ya que son sub-sistemas independientes. Por ende, un lector puede elegir un listado de código de un módulo y comprender sufunción.A continuación le mostramos algunos lineamientos para la programación modular:1. Mantener cada módulo en un tamaño manejable (lo ideal es que sólo incluya una función).2. Poner atención especial en las interfaces críticas (los datos y las variables de control que se pasan a otrosmódulos).3. Minimizar el número de módulos que debe modificar el usuario al realizar cambios.4. Mantener las relaciones jerárquicas establecidas en las fases de la metodología descendente.La herramienta recomendada para diseñar un sistema modular descendente se denomina diagrama de estructura;consiste en cuadros rectangulares que representan a los módulos, junto con flechas para conectarlos.La figura 16.3, un conjunto de módulos que se utilizan para modificar el registro de un cliente, muestra sietemódulos identificados como 000, 100, 110, 120, etcétera. Los módulos de nivel más alto se identifican con losnúmeros de 100 en adelante y los de nivel más bajo, con números de 10 hasta antes del 100. Esta numeraciónpermite a los programadores insertar módulos utilizando un número entre los números de módulos adyacentes.Por ejemplo, si insertamos un módulo entre los módulos 110 y 120 le asignaríamos el número 115.En los extremos de las líneas conectoras se dibujan dos tipos de flechas. Las flechas con los círculos sinrelleno se denominan acoplamientos de datos y las flechas con los círculos rellenos se denominan banderas decontrol o interruptores. Un interruptor es lo mismo que una bandera de control, excepto porque se limita a dosvalores: sí o no. Estas flechas indican que se transmite algo, ya sea hacia el módulo inferior o hacia el superior.En teoría, el analista debería mantener este acoplamiento de datos en el mínimo posible. Entre menos puntosde acoplamiento de datos y banderas de control tenga uno en el sistema, más fácil será modificarlo. Al momento deempezar a programar estos módulos es importante pasar el menor número de puntos de acoplamiento de datosentre los módulos.Lo que es incluso más importante es evitar usar demasiadas banderas de control. El control está diseñadopara transmitirse de los módulos de nivel más bajo a los de nivel más alto en la estructura; en raras ocasionesserá necesario transmitir el control hacia abajo en la estructura. Cuando se pasa el control hacia abajo, se permitea un módulo de nivel bajo tomar una decisión y el resultado es un módulo que realiza dos tareas distintas, lo queviola el ideal de un módulo funcional: sólo debe realizar una tarea.000Modificar archivomaestro declientes100Modificarregistro decliente130Imprimir línea deerror de clienteno encontrado140Dar formato anuevo archivomaestro de clientes150Reescribir archivomaestro declientes120Leer archivomaestro declientes110Leer modificartransacciónclienteArchivomaestro declientemodificadoArchivomaestro declientemodificadoArchivo maestrode clienteArchivo maestrode clienteNúmero declienteNúmero declienteInterruptor deregistro encontradoModificarregistro transacciónInterruptorde fin dearchivoModificarregistrotrans.FIGURA 16.3Un diagrama de estructurafomenta el diseño descendentemediante el uso de módulos.www.xlibros.com
522 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADServicios basados en WebServicios basados en empresasLos módulos de aplicaciones que conforman un sistemaFIGURA 16.4Los módulos en las arquitecturasorientadas al servicio sonindependientes y pueden seromnipresentes.Incluso cuando un diagrama de estructura logra todos los fines para los cuales se dibujó, no puede permane-cer como la única técnica de diseño y documentación. En primer lugar, no muestra el orden en el que se debenejecutar los módulos (un diagrama de flujo de datos se encarga de eso); en segundo, no muestra el suficiente de-talle (el español estructurado se encarga de eso).Arquitectura orientada a servicios (SOA)El desarrollo modular ha originado un concepto denominado arquitectura orientada a servicios (SOA), el cual esmuy distinto a los módulos en el diagrama de estructura. En vez de ser jerárquica como la metodología descen-dente de los diagramas de estructura, la metodología SOA se encarga de crear servicios SOA individuales que notengan ninguna asociación o estén débilmente acoplados entre sí.Cada servicio ejecuta una acción. Un servicio puede devolver el número de días en este mes; otro indica si elpresente es un año bisiesto; un tercer servicio puede reservar cinco noches en un cuarto de hotel, desde finales defebrero hasta principios de marzo. Aunque el tercer servicio necesita conocer los valores que se obtienen del pri-mero y segundo, son independientes unos de otros. Podemos usar cada uno de los servicios en otras aplicacionesdentro de la organización, o incluso en otras organizaciones.Podemos decir que la arquitectura orientada a servicios es sólo un grupo de servicios a los cuales podemosllamar para que provean funciones específicas. En vez de incluir llamadas a otros servicios, un servicio puedeusar ciertos protocolos definidos para poder comunicarse con otros.La figura 16.4 muestra cómo se hacen llamadas a los servicios en todo el sistema. Los servicios pueden sergenerales en naturaleza y se pueden externalizar, o incluso pueden estar disponibles en Web. Otros servicios sonmás especializados y orientados hacia la empresa en sí. Estos servicios para empresas proveen reglas de negociosy también pueden diferenciar a una empresa de otra. Se pueden hacer llamadas a los servicios en un momentodado y en repetidas ocasiones en muchos módulos de aplicaciones.La carga de conectar los servicios de una forma útil es un proceso denominado orquestación, y depende deldiseñador de sistemas. Para lograr esto podemos incluso seleccionar servicios de un menú y supervisarlos me-diante un tablero de control SOA.Para poder establecer una SOA, los servicios deben cumplir con los siguientes requisitos:1. Ser modulares.2. Ser reutilizables.3. Trabajar en conjunto con otros módulos (interoperabilidad).4. Ser capaces de clasificarse e identificarse.5. Debe ser posible supervisarlos.6. Cumplir con los estándares específicos de la industria.Aunque las ventajas de reutilización e interoperabilidad son obvias, la SOA presenta sus retos. Primero quenada, hay que acordar los estándares industriales. Después hay que mantener una biblioteca para que los desarro-www.xlibros.com
CAPÍTULO 16 • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD 523lladores puedan buscar los servicios que necesitan. Por último, la seguridad y la privacidad pueden presentar pro-blemas al utilizar software desarrollado por alguien más. Los defensores de la SOA afirman que la arquitecturaorientada a servicios ha hecho posibles muchas de las características que se encuentran en la Web 2.0.METODOLOGÍAS DE DOCUMENTACIÓNEl esfuerzo de aseguramiento de calidad total requiere que los programas tengan una documentación apropiada.Hay que documentar el software, los sistemas y los procedimientos tanto formales como informales, de maneraque se pueda dar mantenimiento a los sistemas y mejorarlos. La documentación permite a los usuarios, progra-madores y analistas “ver” el sistema, su software y procedimientos sin tener que interactuar con él.La rotación del personal de servicios de información ha sido tradicionalmente alta en comparación con otrosdepartamentos, por lo que es probable que las personas que idearon e instalaron el sistema original no sean lasmismas que le den mantenimiento. Una documentación consistente y bien actualizada reduce el número de horasrequeridas para que el nuevo personal aprenda a usar el sistema antes de realizar un mantenimiento.Hay muchas razones por las que los sistemas y programas no se documentan o cuentan con muy poca docu-mentación. Algunos de los problemas residen en los sistemas y programas en sí; otros, en los analistas y progra-madores.Los analistas de sistemas tal vez no documenten los sistemas de manera apropiada por falta de tiempo ode una compensación suficiente por el tiempo invertido en esta tarea; algunos no lo hacen por aversión y otrospiensan que no es su verdadero trabajo. Además, muchos analistas se muestran reticentes a documentar siste-mas que no sean de ellos, tal vez por temor a las represalias si incluyen material incorrecto sobre el sistemade alguien más. Los defensores de la metodología SDLC nos recuerdan que la documentación que se lleva acabo mediante una herramienta CASE durante las fases de análisis puede hacer frente a muchos de estos pro-blemas.Manuales de procedimientosLos manuales de procedimientos son documentos comunes en las organizaciones; la mayoría de las personas loshan visto. Son el componente en español de la documentación, aunque también pueden contener, por ejemplo,códigos de programas y diagramas de flujo. Los manuales tienen el objetivo de comunicarse con quienes losutilizan y contienen comentarios sobre antecedentes, los pasos requeridos para realizar distintas transacciones,instrucciones sobre cómo recuperarse de los problemas y qué se puede hacer si algo no funciona (diagnóstico defallas). Muchos manuales están disponibles en línea, y en hipertexto para facilitar su uso.También es conveniente tener una metodología sencilla y estandarizada para crear documentación de soportepara los usuarios. Para ser útil, la documentación del usuario se debe mantener actualizada. El uso de la Web harevolucionado la velocidad con la que los usuarios pueden obtener ayuda. Muchos desarrolladores de softwarehan desplazado el soporte para los usuarios (junto con los manuales, páginas FAQ, chat en línea y comunidadesde usuarios) a la Web.Las secciones clave de un manual son una introducción, cómo usar el software, qué hacer si las cosas salenmal, una sección de consulta técnica, un índice e información sobre cómo ponerse en contacto con el fabricante.Las mayores quejas con los manuales de procedimientos son que: 1) están mal organizados, 2) es difícil encontrarinformación en ellos, 3) el caso específico en cuestión no aparece en el manual y 4) el manual no está escrito enespañol común.El método FOLKLOREFOLKLORE es una técnica de documentación de sistemas que se creó para complementar algunas de las técni-cas que hemos visto. Incluso con la plétora de técnicas disponibles, muchos sistemas están mal documentados ono cuentan con ningún tipo de documentación. FOLKLORE recopila la información que comparten comúnmentelos usuarios pero que raras veces escriben.FOLKLORE se desarrolló por primera vez en la década de 1980 por Kendall y Losee, mucho antes de lacreación de blogs y comunidades de usuarios. FOLKLORE tiene dos ventajas principales en comparación conlas comunidades de usuarios que se encuentran comúnmente: 1) es estructurado, lo cual produce una documenta-ción más completa y organizada, y 2) anima a que alguien familiarizado con el software busque información envez de dejar que los usuarios avancen por su cuenta.FOLKLORE es una técnica sistemática basada en los métodos tradicionales utilizados para recopilar el fol-klore sobre las personas y leyendas. En esta metodología para la documentación de sistemas, el analista tieneque entrevistar a los usuarios, investigar la documentación existente en los archivos y observar el procesamientode información. El objetivo es recopilar la información correspondiente a una de cuatro categorías: costumbres,relatos, dichos y formas artísticas. La figura 16.5 sugiere cómo se relaciona cada categoría con la documentaciónde sistemas de información.www.xlibros.com
524 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADAl documentar las costumbres, el analista (u otro folklorista) trata de capturar por escrito lo que están ha-ciendo los usuarios para ejecutar todos los programas sin problemas. Un ejemplo de una costumbre sería: “Por logeneral nos tardamos dos días en actualizar los registros mensuales debido a que la tarea es bastante extensa. Nosencargamos de las cuentas comerciales el primer día y guardamos las demás para el siguiente”.Los relatos son historias que cuentan los usuarios en relación con la forma en que trabajó el sistema. Desdeluego que la precisión del relato depende de la memoria del usuario y es a lo más una opinión sobre la manera enque operó el programa. Por lo general los relatos tienen un principio, una parte media y un final. Así, tendríamosuna historia sobre un problema (el principio), una descripción de los efectos (la parte media) y la solución (el final).Los dichos son declaraciones breves que representan generalizaciones o consejo. Tenemos muchos dichos enla vida diaria, como “Más vale malo por conocido que bueno por conocer” o “Todo cabe en un jarrito sabiéndoloacomodar”. En la documentación de sistemas tenemos también muchos dichos, como “Omita esta sección de có-digo y el programa explotará” o “Siempre hay que respaldar datos con frecuencia”. A los usuarios les gusta darconsejos, por lo que el analista debe tratar de capturarlos e incluirlos en la documentación de FOLKLORE.La recopilación de formas artísticas es otra importante actividad de los folkloristas tradicionales, por lo queel analista de sistemas también debe comprender su importancia. Los diagramas de flujo, los diagramas y las ta-COSTUMBRESDescripciones de la formaen que los usuarios hacenque funcione el sistema enese momento.FOLKLORECUENTOSHistorias sobre la formaen que los usuariospudieron hacer quefuncionara el sistema.FORMAS ARTÍSTICASDiagramas, tablas ydiagramas de flujo.DICHOS“Haga esto y daráresultado”.FIGURA 16.5Las costumbres, los relatos, losdichos y las formas artísticasutilizadas en el método dedocumentación FOLKLORE seaplican a los sistemas deinformación.O P O R T U N I D A D D E C O N S U L T O R Í A 1 6 . 2Escribir está bien“Es tan fácil comprender. Yo digo que si todos usan pseudocó-digo no habrá problemas, tú sabes, con eso de que las cosas no estánestandarizadas”, dice Al Gorithm, un nuevo programador que estarátrabajando en el equipo de análisis de sistemas que usted dirige. Alestá hablando en una reunión informal entre tres miembros delequipo de análisis de sistemas, una fuerza de trabajo de MIS de seispersonas del departamento de publicidad y dos programadores; to-dos se encuentran trabajando en el desarrollo de un sistema de in-formación para el personal de publicidad.Philip, un ejecutivo de cuentas de publicidad y miembro de lafuerza de trabajo de MIS, mira sorprendido. “¿Cómo se llama estemétodo?”. Los dos programadores responden al mismo tiempo,“Pseudocódigo”. Philip, sin verse impresionado, responde: “Eso nome dice nada”.Neeva Phail, uno de los analistas de sistemas, empieza a expli-car: “Tal vez no importe realmente qué usemos, si...”En ese momento interrumpe Flo Chart, otra analista de siste-mas, para decir: “Odio el pseudocódigo”. A continuación mira conesperanza a los programadores: “Estoy segura de que podemosacordar una mejor técnica”.David, un ejecutivo de publicidad con más años de experien-cia, declara con apariencia ligeramente molesta: “Aprendí sobre losdiagramas de flujo desde los primeros analistas de sistemas quetuvimos hace años. ¿Acaso ya no hacen eso ustedes? Creo que fun-cionan mejor”.Lo que en un principio era una reunión amistosa de repenteparece haber llegado a un punto muerto. Los participantes se miranunos a otros con recelo. Usted, que como analista de sistemas hatrabajado en muchos proyectos distintos con diferentes tipos depersonas, se da cuenta de que el grupo está a la espera de que ustedhaga algunas sugerencias razonables.Con base en lo que sabe sobre las diversas técnicas de docu-mentación, ¿qué técnica(s) propondría a los miembros del grupo?¿Cómo solucionará(n) la(s) técnica(s) que propuso algunas de lascuestiones que han expresado? ¿Qué proceso utilizará para decidirsobre las técnicas apropiadas? Elabore su respuesta en una página.www.xlibros.com
CAPÍTULO 16 • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD 525blas que los usuarios dibujan algunas veces pueden ser mejores o más útiles que los diagramas de flujo dibujadospor el autor original del sistema. A menudo los analistas encontrarán dicho arte publicado en tableros de anun-cios, o pueden pedir a los usuarios que limpien sus archivos y recuperen los diagramas que sean útiles.Los colaboradores en el documento de FOLKLORE no tienen que documentar todo el sistema, sólo las par-tes que conozcan. Al igual que con las comunidades de usuarios basadas en Web, el peligro de depender de FOL-KLORE es que la información recopilada de los usuarios puede ser correcta, parcialmente correcta o incorrecta.E X P E R I E N C I A D E H Y P E R C A S E ® 1 6 . 1“ Éste es un lugar fascinante para trabajar. Estoy seguro queusted está de acuerdo, ahora que ha tenido la oportunidad de obser-varnos. Algunas veces creo que debería ser divertido ser un ex-terno... ¿no se siente como un antropólogo que acaba de descubriruna nueva cultura? Recuerdo cuando entré aquí por primera vez.Todo era tan nuevo, tan extraño. Incluso hasta el lenguaje era dis-tinto. No era un ‘consumidor’, era un ‘cliente’. No teníamos ‘depar-tamentos’ sino ‘unidades’. No era una cafetería para empleados, erael ‘comedor’. Esto se aplica también a la forma en que trabajamos.Todos tenemos distintas formas de abordar las cosas. Creo que es-toy entendiendo las expectativas de Snowden, pero de vez en cuandocometo un error también. Por ejemplo, si puedo entregarle el trabajoen línea, él lo preferiría a un informe impreso. ¡Ésa es la razón porla que tengo dos computadoras en mi escritorio, también! Siempreveo que usted está haciendo muchas anotaciones... creo que tienesentido. Se supone que debe documentar lo que nosotros hacemoscon nuestros sistemas e información, así como lo que está haciendosu equipo, ¿verdad?”.Preguntas de HYPERCASE1. Use el método FOLKLORE para completar ladocumentación del sistema GEMS de la Unidad de sistemasde información administrativa (Management InformationSystems Unit). Asegúrese de incluir las costumbres, relatos,dichos y formas artísticas.2. Sugiera en dos párrafos una metodología basada en PC paracapturar los elementos de FOLKLORE, de manera que no seanecesario usar un registro basado en papel. Asegúrese de quela solución que sugiera pueda alojar tanto gráficos como texto.3. Diseñe pantallas de entrada y salida para FOLKLORE quefaciliten la introducción de datos y provean indicadores pararecordar de inmediato los elementos de FOLKLORE.FIGURA 16.HC1En HyperCase puede usar FOLKLORE para documentar formas artísticas creadas orecolectadas por los usuarios para hacer uso de sus sistemas.www.xlibros.com
526 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADPRUEBAPrueba completa desistemas condatos realesUSUARIOSANALISTASPrueba de vínculoscon datos de pruebaPrueba de los programas condatos de pruebaPrueba completade sistemas condatos de pruebaOPERADORESPROGRAMADORESFIGURA 16.6Los programadores, analistas,operadores y usuarios desempeñandistintos roles en el proceso deprueba del software y los sistemas.Elección de una técnica de diseño y documentaciónLas técnicas que vimos en este capítulo son extremadamente valiosas como herramientas de diseño, ayudas dememoria, herramientas de productividad y medio para reducir las dependencias en los miembros clave del perso-nal. Sin embargo, el analista de sistemas se enfrenta a una difícil decisión en cuanto al método que debe adoptar.A continuación le mostramos un conjunto de lineamientos para ayudar al analista a utilizar la técnica apropiada:Seleccione una técnica que:1. Sea compatible con la documentación existente.2. Sea comprendida por los demás en la organización.3. Le permita regresar a trabajar en el sistema después de haber estado alejado durante un periodo de tiempo.4. Sea adecuada para el tamaño del sistema en el que está trabajando.5. Permita una metodología de diseño estructurado, si eso se considera más importante que otros factores.6. Permita modificarla con facilidad.PRUEBA, MANTENIMIENTO Y AUDITORÍAUna vez que el analista ha diseñado y codificado el sistema, la prueba, mantenimiento y auditoría de éste son lasconsideraciones primordiales.El proceso de pruebaTodos los programas de aplicaciones recién escritos o modificados del sistema (así como los nuevos manuales deprocedimientos, el nuevo hardware y todas las interfaces del sistema) se deben probar de manera exhaustiva. Nobasta con el método de prueba y error al azar. La prueba se realiza durante el desarrollo de sistemas y no sólo alfinal. Su propósito es sacar a la luz los problemas desconocidos hasta ese momento, no demostrar la perfecciónde los programas, manuales o equipo.Aunque el proceso de prueba es tedioso, es una serie esencial de pasos que ayudan a asegurar la calidad delsistema eventual. Es mucho menos perjudicial evaluar con anticipación a tener un sistema probado en forma in-correcta que falle después de su instalación. Las pruebas se realizan en los subsistemas o módulos del programaa medida que avanza su desarrollo. El proceso de prueba se lleva a cabo en muchos niveles, a diversos intervalos.Antes de poner el sistema en producción hay que realizar una verificación de escritorio de todos los programas,comprobarlos con datos de prueba y comprobar que los módulos funcionen en conjunto como se había pla-neado.También hay que probar el sistema como un todo funcional. Aquí se incluye la prueba de las interfaces entrelos subsistemas, la exactitud de la salida, además de la utilidad y comprensibilidad de la documentación y salidadel sistema. Los programadores, analistas, operadores y usuarios desempeñan distintos roles en los diversos as-pectos del proceso de prueba, como se muestra en la figura 16.6. Por lo general la prueba del hardware se pro-porciona como un servicio por parte de los distribuidores de equipo, quienes realizan sus propias pruebas en elequipo cuando se entrega en el sitio.www.xlibros.com
CAPÍTULO 16 • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD 527PRUEBA DE PROGRAMAS CON DATOS DE PRUEBA Gran parte de la responsabilidad de la prueba de losprogramas recae en el (los) autor(es) original(es) de cada programa. El analista de sistemas actúa comoconsejero y coordinador para la prueba de los programas; su objetivo es asegurar que los programadoresimplementen las técnicas de prueba correctas, pero es probable que no lleve a cabo personalmente este nivel decomprobación.En esta etapa los programadores primero deben realizar una verificación de escritorio de sus programas paracomprobar la forma en que funcionará el sistema. En este tipo de comprobación el programador sigue cada pasodel programa en papel para verificar que la rutina funcione según lo escrito.A continuación, los programadores deben crear datos de prueba tanto válidos como inválidos. Luego se eje-cutan los programas con estos datos para ver si las rutinas básicas funcionan y detectar errores. Si la salida de losmódulos principales es satisfactoria, puede agregar más datos de prueba para verificar otros módulos. Los datosde prueba creados deben probar los valores mínimos y máximos posibles, así como todas las posibles variacio-nes en formato y códigos. La salida de archivos de los datos de prueba se debe verificar con cuidado. Nuncadebemos asumir que los datos que contiene un archivo son correctos sólo porque se creó y se pudo acceder a sucontenido.Durante este proceso el analista de sistemas verifica la salida en busca de errores y aconseja al programadoren caso de requerir alguna corrección. Por lo general el analista no recomienda ni crea datos de prueba para pro-bar los programas, pero podría señalar al programador las omisiones de los tipos de datos que se deban agregaren pruebas posteriores.PRUEBA DE VÍNCULOS CON DATOS DE PRUEBA Cuando los programas pasan la verificación de escritorio y lacomprobación con datos de prueba, deben pasar por la prueba de vínculos, a la cual también se le conoce comoprueba de cadena. La prueba de vínculos verifica que los programas interdependientes trabajen juntos realmentecomo se planeó.El analista crea datos especiales de prueba que abarcan varias situaciones de procesamiento para la pruebade vínculos. Primero se procesan los datos de prueba comunes para ver si el sistema puede manejar las transac-ciones normales, las que representan la mayor parte de su carga. Si el sistema funciona con las transaccionesnormales se agregan variaciones, incluyendo los datos inválidos utilizados para asegurar que el sistema puedadetectar errores en forma apropiada.PRUEBA DE SISTEMAS COMPLETOS CON DATOS DE PRUEBA Al concluir de manera satisfactoria las pruebas devínculos, se debe probar el sistema como una entidad completa. En esta etapa, los operadores y usuarios finalesse involucran de manera activa en la prueba. Aquí se utilizan los datos de prueba creados por el equipo de análisisde sistemas con el propósito específico de probar los objetivos del sistema.Como es de esperarse, hay varios factores a considerar a la hora de probar sistemas con datos de prueba:1. Examinar si los operadores tienen la documentación adecuada en los manuales de procedimiento (impresoso en línea) para lograr una operación correcta y eficiente.2. Verificar si los manuales de procedimientos son lo bastante claros para comunicar la forma en que se debenpreparar los datos para la entrada.3. Averiguar si los flujos de trabajo requeridos por el sistema nuevo o modificado realmente “fluyen”.4. Determinar si la salida es correcta y si los usuarios comprenden que esta salida es casi idéntica a laapariencia que tendrá en su forma final.Recuerde programar el tiempo adecuado para la prueba del sistema. Por desgracia este paso se pasa por alto confrecuencia si la instalación del sistema está requiriendo más tiempo del planeado.La prueba de sistemas incluye la reafirmación de los estándares de calidad establecidos para el desempeñodel sistema al crear sus especificaciones iniciales. Todos los involucrados deben estar una vez más de acuerdoen cómo determinar si el sistema hace lo que se supone que debe hacer. Este paso debe incluir medidas de error,conveniencia, facilidad de uso, orden apropiado de las transacciones, tiempo inactivo aceptable y manuales deprocedimientos comprensibles.PRUEBA DE SISTEMAS COMPLETA CON DATOS REALES Cuando las pruebas de sistemas con datos de pruebaresulten satisfactorias, es conveniente probar el nuevo sistema con varias corridas de datos reales, es decir,usando datos satisfactoriamente procesados por el sistema anterior. Este paso permite una comparación precisade la salida del nuevo sistema con lo que sabemos que es una salida procesada en forma correcta, además deque es una buena idea para probar cómo se manejarán los datos reales. Sin duda, este paso no es posible al crearsalidas completamente nuevas (por ejemplo, la salida de una transacción de comercio electrónico de un nuevositio Web corporativo). Al igual que con los datos de prueba, se utilizan sólo pequeñas cantidades de datos realesen este tipo de prueba del sistema.www.xlibros.com
528 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADO P O R T U N I D A D D E C O N S U L T O R Í A 1 6 . 3Estudiando de manera intensiva para su prueba de sistemas“ Estamos cortos de tiempo. Sólo mira esta proyección”, diceLou Scuntroll, el miembro más reciente del equipo de análisis desistemas que usted dirige, mientras le muestra el diagrama PERT queel equipo ha estado utilizando para proyectar cuándo estaría listo yfuncionando el nuevo sistema. “No hay posibilidad de cumplir conla fecha final de julio para la prueba con datos reales. Estamos atra-sados tres semanas debido a la tardanza en el envío del equipo”.Usted, que como analista de sistemas ha visto cómo vienen yvan las fechas de entrega en otros proyectos, trata de permanecertranquilo y de evaluar la situación con cuidado antes de hablar. Conlentitud cuestiona a Lou sobre la posibilidad de retrasar la prueba.Lou le responde: “Si tratamos de aplazar la prueba hasta lasprimeras semanas de agosto, hay dos personas clave de contabilidadque van a estar de vacaciones”. Lou se ve visiblemente molesto antela posibilidad de no cumplir con la fecha de entrega.Stan Dards, otro miembro reciente de su equipo de análisis desistemas, entra a la oficina de Lou. “Ustedes dos tienen una aparien-cia terrible. Las cosas van bien, ¿o no? No me van a reasignar paraprogramar una aplicación de nómina, ¿o sí?”Lou voltea hacia arriba, y es obvio que no aprecia el sentido dehumor de Stan ni lo que le preocupa en ese momento. “Qué buenoque entraste. Tenemos que tomar algunas decisiones importantessobre la calendarización”. Lou sostiene el diagrama PERT para queStan lo inspeccione. “Observa la fecha de prueba en julio. Comoverás, no hay forma de lograrlo. ¿Alguna brillante idea?”.Stan contempla el diagrama por un momento y después dice:“Algo se tiene que ir. Veamos aquí... tal vez pasar la prueba delmódulo de contabilidad a...”.Lou lo interrumpe y dice rotundamente: “No, ya pensé en ellopero Stanford y Binet de contabilidad van a salir de la ciudad enagosto. Tal vez podamos omitir esa parte de la prueba. Han coope-rado mucho. No creo que se opongan a que lo ‘demos por hecho’ yrealicemos la prueba cuando entremos en producción”.“Creo que es una buena idea, Lou”, asiente Stan, tratando decompensar lo de sus bromas anteriores. “No hemos tenido ningúnproblema real con eso y los programadores están muy confiados. Deesa forma podríamos permanecer dentro del itinerario con todo lodemás. Voto por no probar la porción correspondiente a contabili-dad, sino simplemente hacer como si todo saliera bien”.Como el miembro más antiguo del equipo presente, ¿quépuede hacer para convencer a Lou y Stan sobre la importancia deprobar el módulo de contabilidad con datos reales? ¿Qué puedenhacer los analistas de sistemas para planificar su tiempo y permitirel tiempo adecuado para probar con datos de prueba y datos reales?¿Cuáles son algunos de los posibles problemas a los que se puedenenfrentar los miembros del equipo si no prueban el sistema porcompleto con datos reales, antes de poner el sistema en producción?¿Hay en realidad pasos en el proceso de análisis y diseño de siste-mas que se puedan colapsar para que un proyecto retrasado vuelvaa estar a tiempo? Responda a estas preguntas en dos páginas.Aunque hemos considerado con mucho detenimiento la interacción entre usuario y sistema (vea el capítulo14), nunca podremos predecir por completo todo el rango de diferencias que ésta asume. No es suficiente en-trevistar a los usuarios sobre la forma en que están interactuando con el sistema; debemos observarlos personal-mente.Los elementos a observar son la facilidad de aprender a usar el sistema y la reacción de los usuarios a laretroalimentación del sistema, incluyendo lo que ocurre al recibir un mensaje de error y lo que ocurre cuando seinforma al usuario que el sistema está ejecutando sus comandos. Hay que estar especialmente atentos a la formaen que los usuarios reaccionan al tiempo de respuesta del sistema y al lenguaje de las respuestas. También hayque escuchar lo que dicen los usuarios sobre el sistema a medida que lo van descubriendo. Hay que resolvercualquier problema real antes de poner el sistema en producción, no sólo encubrirlos como ajustes al sistema quelos usuarios y operadores deberían realizar por su cuenta.Al igual que el software de computadora, también hay que probar los manuales de procedimientos. Aunqueel personal de soporte puede revisar los manuales, y el equipo de análisis de sistemas puede verificar su precisióntécnica, la única forma real de probarlos es a través de los usuarios y operadores, de preferencia cuando se reali-zan pruebas completas en el sistema con datos reales. Considere las sugerencias de los usuarios e incorpórelas enlas versiones finales de las páginas Web, los manuales impresos y el resto de la documentación.Prácticas de mantenimientoSu objetivo como analista de sistemas debe ser instalar o modificar sistemas que tengan una vida útil razona-ble. Lo ideal es crear un sistema cuyo diseño sea integral y con una suficiente visión a futuro suficiente paraatender las necesidades actuales y proyectadas de los usuarios durante los años por venir. Recurra a su expe-riencia para anticipar esas necesidades y después agregar tanto flexibilidad como capacidad de adaptación alsistema. Entre mejor sea el diseño del sistema, más fácil será mantenerlo y menos dinero tendrá que invertir laempresa en ello.www.xlibros.com
CAPÍTULO 16 • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD 529Reducir los costos de mantenimiento es primordial, ya que el mero mantenimiento del software puede devo-rar hasta el 50 por ciento del presupuesto total de procesamiento de datos de una empresa. Los costos excesivosde mantenimiento son responsabilidad del diseñador del sistema, ya que cerca del 70 por ciento de los errores desoftware se atribuyen a un diseño de software inapropiado. Desde la perspectiva de sistemas, tiene sentido el he-cho de que detectar y corregir los errores de diseño de software lo antes posible sea menos costoso que dejar quepasen desapercibidos hasta que sea necesario el mantenimiento.La mayor parte de las veces el mantenimiento se realiza para mejorar el software existente y no para respon-der a una crisis o falla del sistema. El mantenimiento también se realiza para actualizar software en respuesta alos cambios en la organización. Este trabajo no es tan sustancial como mejorar el software, pero hay que hacerlo.El mantenimiento de emergencia y adaptativo representa menos de la mitad de todo el mantenimiento del sis-tema.Parte del trabajo del analista de sistemas es asegurar que se implementen los canales y procedimientosadecuados para permitir la retroalimentación sobre las necesidades de mantenimiento y las acciones para sa-tisfacerlas. Para los usuarios debe ser fácil comunicar los problemas y las sugerencias a los encargados de darmantenimiento al sistema. Las soluciones son proveer a los usuarios el acceso vía correo electrónico al soportetécnico, así como permitirles descargar actualizaciones de productos o parches a través de la Web.AuditoríaLa auditoría es otra forma de asegurar la calidad de la información que contiene el sistema. En términos genera-les, la auditoría se refiere al proceso de hacer que un experto que no esté involucrado en el proceso de establecero usar un sistema examine la información para evaluar su confiabilidad. Sin importar que la información resulteconfiable o no, el hallazgo sobre su confiabilidad se comunica a los demás con el fin de que actúen en conse-cuencia.Para los sistemas de información, en general hay dos tipos de auditores: internos y externos. El hecho dedeterminar si ambos son necesarios para el sistema que usted diseñe dependerá del tipo de sistema. Los auditoresinternos trabajan para la misma organización que posee el sistema de información, mientras que los auditores ex-ternos (también llamados independientes) se contratan del exterior.Los auditores externos se utilizan cuando el sistema de información procesa datos que influyen en los esta-dos financieros de la empresa; los externos realizan una auditoría sobre el sistema para asegurar la imparcia-lidad de los estados financieros que se producen. También se pueden usar cuando ocurre algo fuera de lo normalen el que hay empleados de la empresa involucrados, como una sospecha de fraude por computadora o malver-sación de fondos.Los auditores internos estudian los controles que se utilizan en el sistema de información para asegurarse deque sean adecuados y que estén realizando la función esperada. También evalúan la conveniencia de los controlesde seguridad. Aunque trabajan para la misma organización, los auditores internos no se reportan con la personaresponsable del sistema al que están auditando. Con frecuencia, el trabajo de los auditores internos es más pro-fundo que el de los auditores externos.IMPLEMENTACIÓN DE SISTEMAS DISTRIBUIDOSSi la confiabilidad de una red de telecomunicaciones es alta, es posible tener sistemas distribuidos para las em-presas; podemos concebir este arreglo como una aplicación de las telecomunicaciones. El concepto de sistemasdistribuidos se utiliza de muchas formas. Aquí lo consideraremos en un sentido general para incluir las estacio-nes de trabajo que se pueden comunicar entre sí y con los procesadores de datos, así como las distintas configu-raciones arquitectónicas jerárquicas de los procesadores de datos que se comunican entre sí y que tienen distintascapacidades de almacenamiento de datos.En este modelo, las funciones de procesamiento se delegan a los clientes (usuarios) o a los servidores, de-pendiendo de las máquinas que sean más adecuadas para ejecutar el trabajo. En este tipo de arquitectura, la partede una aplicación de red correspondiente al cliente se ejecutará en el sistema cliente y la parte de la aplicacióncorrespondiente al servidor se ejecutará en el servidor de archivos. Con un modelo cliente-servidor los usuariosinteractúan con partes limitadas de la aplicación, incluyendo la interfaz de usuario, la entrada de datos, las con-sultas en la base de datos y la generación de informes. El servidor se encarga de las funciones de controlar elacceso de los usuarios a las bases de datos centralizadas, recuperar o procesar los datos y demás funciones rela-cionadas (como administrar los dispositivos periféricos).Tecnología cliente-servidorEl modelo cliente-servidor, la computación cliente-servidor, la tecnología cliente-servidor y la arquitectura clien-te-servidor se refieren a un modelo de diseño que podemos considerar como aplicaciones que se ejecutan en unawww.xlibros.com
530 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADServidor Web(maneja el intercambio deinformación basada en Web)Computadoras cliente(el medio de entrada yvisualización de información)Servidor de aplicaciones(procesa datos que entran ysalen de las computadorascliente y del servidor debases de datos)Servidor de bases de datos(almacena yrecupera datos)FIGURA 16.7Una configuración cliente-servidorde tres niveles.red. En términos muy básicos, podemos imaginar que el cliente hace (y el servidor ejecuta, o cumple de ciertaforma con) la solicitud. Eso se consideraría una arquitectura cliente-servidor de dos niveles.Hay una configuración más compleja en la que se involucran tres conjuntos de computadoras para realizarlos procesos de recuperación, procesamiento, almacenamiento y recepción de los datos. La figura 16.7 muestraun modelo cliente-servidor de tres niveles. En esta figura, las computadoras cliente acceden a tres niveles de ser-vidores: los servidores Web, que manejan el intercambio de información basado en Web; los servidores de apli-caciones, que procesan datos que entran y salen de las computadoras cliente y el servidor de bases de datos; y elservidor de bases de datos, que almacena y recibe los datos. Las computadoras en la red están programadas pararealizar su trabajo con eficiencia al dividir las tareas de procesamiento entre los clientes y servidores.Piense en el modelo cliente/servidor como en un sistema que coloca a los usuarios como el centro del tra-bajo, con su interacción con datos como concepto clave. Aunque hay dos elementos funcionando —el cliente y elservidor— el objetivo del modelo cliente-servidor es que los usuarios lo vean como un sistema. De hecho, se es-pera que los usuarios no adviertan cómo desempeña la red cliente-servidor su procesamiento distribuido, debidoa que debe tener la apariencia de un sistema unificado. En una red de igual a igual, las PC pueden actuar como elservidor o el cliente, dependiendo de los requerimientos de la aplicación.CLIENTES COMO PARTE DEL MODELO CLIENTE-SERVIDOR Al ver el término cliente, podría verse tentado a pensaren personas o usuarios; por ejemplo, hablamos de “clientes de nuestra práctica de consultoría”. Sin embargo, enel modelo cliente-servidor el término cliente no se refiere a las personas, sino a máquinas conectadas en red queson los puntos típicos de entrada al sistema cliente-servidor que utilizan los humanos. Por lo tanto, los clientespodrían ser computadoras de escritorio conectadas en red, una estación de trabajo, computadoras portátiles ocualquier otra forma en que el usuario pueda entrar al sistema.www.xlibros.com
CAPÍTULO 16 • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD 531Al usar una interfaz gráfica de usuario (GUI), los individuos por lo general interactúan en forma directasólo con la parte del cliente. Las estaciones de trabajo del cliente usan programas más pequeños que residen enel cliente para hacer el procesamiento en primer plano (contrario al procesamiento en segundo plano, que men-cionaremos más adelante), incluyendo la comunicación con el usuario. Si una aplicación se denomina aplicaciónbasada en el cliente, la aplicación reside en una computadora cliente y otros usuarios en la red no pueden accedera ella.ANÁLISIS DE LAS VENTAJAS Y DESVENTAJAS DEL MODELO CLIENTE-SERVIDOR Las primeras empresas en adoptarel modelo cliente-servidor descubrieron que no siempre es la mejor solución a los problemas informáticos dela organización. Con frecuencia, se pide al diseñador de sistemas que avale un modelo cliente-servidor que yaestá en funcionamiento. Así como con cualquier otra propuesta de cómputo corporativa en cuya creación ustedno haya tenido una parte activa, debe revisar el plan cuidadosamente. ¿Apoyará la cultura de la organización unmodelo cliente-servidor? ¿Qué cambios es necesario hacer en la cultura informal y en los procedimientos detrabajo formales para que un modelo cliente-servidor se pueda usar con todo su potencial? ¿Cuál debe ser su rolcomo analista de sistemas en esta situación?Aunque uno de los beneficios mencionados del modelo cliente-servidor son costos más bajos de procesa-miento, hay muy pocos datos reales disponibles para demostrarlo (incluso cuando hay alguna evidencia anecdó-tica para apoyar esta aseveración). Hay costos de cambio y costos iniciales muy bien documentados asociadoscon una migración hacia una arquitectura cliente-servidor. Las aplicaciones para el modelo cliente-servidor sedeben escribir como dos componentes de software, cada uno de los cuales se ejecuta en una máquina separada,pero que deben aparecer como si operaran como una sola aplicación. Sin embargo, usar el modelo cliente-servi-dor permite usar mayor poder de cómputo y brinda una mejor oportunidad de personalizar las aplicaciones, encomparación con las otras opciones.Aunque las redes se pueden caracterizar por su forma o topología, también se clasifican por su alcancegeográfico y los tipos de servicios que ofrecen. Los tipos estándares de redes incluyen una red de área amplia(WAN) y una red de área local (LAN). Las LAN son estándares para vincular computadoras locales o terminalesen un departamento, edificio o varios edificios de una organización. Las WAN pueden servir a los usuarios a tra-vés de varios kilómetros o de continentes enteros.Ahora, conectar una red también es técnica, económica y operacionalmente factible para las oficinas pe-queñas y proporciona una solución que los analistas deben considerar para los negocios pequeños. Uno de losaspectos costosos a la hora de implementar una LAN es que cada vez que se mueve hay que volver a tender elcableado. Algunas organizaciones están haciendo frente a este problema mediante la aplicación de una red deárea local inalámbrica de alta velocidad (WLAN). Dicho en forma más específica, a estas redes inalámbricas seles conoce como Wi-Fi.Computación en nubeEn la actualidad, el tipo de computación con un crecimiento más rápido es la computación en nube. Este tipo decomputación se describe como una metáfora para Internet, ya que a menudo Internet se dibuja como una nube enlos diagramas de red. Al utilizar la computación en nube, las organizaciones y los usuarios individuales puedenusar servicios Web, servicios de bases de datos y servicios de aplicaciones a través de Internet, sin tener queinvertir en hardware corporativo o personal, software o herramientas de software. La figura 16.8 describe los in-tercambios entre computadoras cliente y los servicios en la nube. Las empresas utilizan navegadores Web comoMicrosoft Internet Explorer o Mozilla Firefox para acceder a estas aplicaciones. Como puede ver, los servidoresalmacenan software y datos para las empresas.Muchas empresas de hardware, software y consultoría grandes y bien establecidas como Cisco, Dell, IBM,HP, Microsoft, SAP y otras están llevando a cabo esfuerzos masivos de computación en nube, a menudo con loque se denomina “recursos virtualizados”. Lo distinto de estas metodologías es su habilidad de crecer y adaptarsea las necesidades cambiantes de las empresas. Es decir, son escalables para adaptarse a la demanda creciente(o cambiante) por parte de los usuarios. El modelo de “software como un servicio”, también conocido comoSaaS, se incluye en el concepto de la computación en nube.Por su parte, los usuarios no necesitan comprender, controlar o ser expertos en la infraestructura de tecno-logía que constituye la compleja infraestructura de nube que les permite realizar su trabajo. Con frecuencia lasorganizaciones no necesitan mantener personal de TI para dimensionar hacia arriba o hacia abajo, incluso cuandoel contrato o presupuesto de una compañía cambie en forma ascendente o descendente debido al impacto redu-cido de estos cambios.Es común que las organizaciones que utilizan la computación en nube no encuentren necesario realizar gas-tos iniciales de capital en infraestructura de TI, por lo que las empresas más pequeñas con presupuestos menoresy menos predecibles pueden avanzar en el procesamiento con más rapidez. Esto también permite a las grandescorporaciones invertir en proyectos estratégicos en vez de hacerlo en infraestructura de TI.www.xlibros.com
532 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADServicios Web Servicios deaplicacionesServicios de basesde datosComputadoras clienteFIGURA 16.8La computación en nube ofrecemuchos servicios.Compartir recursos de TI por medio de la computación en nube significa que una gran colección de usuarioscorporativos comparten servicios Web, pero también tienen que compartir el costo de éstos; además descubrenque aumenta la capacidad de carga máxima y que se puede maximizar la eficiencia y el uso de los sistemas.Las empresas también esperan mejorar su habilidad de desempeñar el proceso de recuperación de desastresmediante el uso de la computación en nube, ya que provee muchos sitios redundantes. Aunque la computación ennube no es inmune a los cortes de energía, puede dividir el riesgo entre varios servidores.Las organizaciones tratan de mejorar la seguridad a través de la computación en nube y mediante el uso deservicios que se venden con un énfasis especial en la seguridad. Sin embargo, existe la preocupación de que lacentralización de este tipo pueda también significar una pérdida del control sobre los datos de misión crítica. Losusuarios se podrían beneficiar de la movilidad al no estar supeditados a una sola instalación de computadora ouna sola interfaz. Los navegadores Web y los servicios basados en Web disponibles a través de la computación ennube liberan a los usuarios para acceder a las aplicaciones en cualquier parte y a cualquier hora, sin preocuparsepor la ubicación o el dispositivo que vayan a utilizar.Muchas empresas grandes de software (algunas de las cuales se denominan “jugadores puros” o “pureplayers”, ya que nunca han existido como empresas con presencia física) ofrecen aplicaciones que utilizan lacomputación en nube, en donde los usuarios pueden utilizar su navegador Web para acceder a las aplicaciones.Algunos ejemplos son Google Apps (para hojas de cálculo y calendarios), Amazon Web Services, Akami y elsoftware CRM de Salesforce.com que ahora también está disponible en el iPhone. Estos proveedores de softwareafirman que están tratando de reducir el costo para el usuario, así como de proporcionar mayor flexibilidad.Algunos observadores tienen la creencia de que migrar a la computación en nube es una forma de que lasempresas más grandes y antiguas se solidifiquen y retengan sus negocios esenciales al incorporar SaaS (softwarewww.xlibros.com
CAPÍTULO 16 • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD 533como un servicio), SOA (Arquitectura orientada a servicios), virtualización, código fuente abierto y muchas otrastendencias de la última década en sus ofrecimientos de software, herramientas de software, servicios y poder decómputo vía Internet. Pero si el costo de la infraestructura cayera drásticamente (como lo ha hecho según la his-toria), el impulso hacia la computación en nube se podría invertir. Si eso ocurriera, las organizaciones podrían to-mar decisiones distintas e invertir una vez más en su propia infraestructura. Además, muchos de los servicios enlínea que conforman la computación en nube se pagan por medio de los ingresos provenientes de la publicidad.En una economía vacilante se reducirían los ingresos por publicidad y los patrocinios de la computación en nubepodrían disminuir también.Modelado de redDebido a que la conexión a una red se ha vuelto muy importante, el diseñador de sistemas necesita tomar encuenta al diseño de la red. Ya sea que un diseñador de sistemas tenga que decidir sobre las configuraciones de lasredes —o si se preocupa por el hardware tal como enrutadores y puentes que deben estar en el lugar cuando seconocen las redes—, siempre debe tomar en cuenta el diseño lógico de las redes.Un analista debe adoptar un conjunto de símbolos tal como los de la figura 16.9 para modelar la red. Es útiltener diferentes símbolos para distinguir entre concentradores, redes externas y estaciones de trabajo. Tambiénes útil adoptar una convención para ilustrar múltiples redes y estaciones de trabajo. El primer paso es dibujar undiagrama de descomposición de red que proporcione una apreciación global del sistema. Después, dibujarun diagrama de conectividad de concentrador. Finalmente, dividir el diagrama de conectividad de concentradorpara mostrar las diversas estaciones de trabajo y cómo se conectan.CÓMO DIBUJAR UN DIAGRAMA DE DESCOMPOSICIÓN DE RED Podemos ilustrar el dibujo de un modelo dedescomposición de red al referirnos una vez más al ejemplo de World’s Trend Catalog Division de los capítulosanteriores. Empiece dibujando un círculo en la parte superior y denominándolo “Red de World’s Trend”.Ahora dibuje varios círculos en el nivel inferior, como se muestra en la figura 16.10. Estos círculos representanlos concentradores para la división de marketing y para cada uno de los tres centros de toma de pedidos ydistribución (división estadounidense, división canadiense y división mexicana).Podemos extender este dibujo al dibujar otro nivel. Esta vez, podemos agregar las estaciones de trabajo.Por ejemplo, la división de marketing tiene dos estaciones de trabajo conectadas, mientras que la división esta-dounidense tiene 33 estaciones de trabajo en su LAN (administración, almacén, gerente de entrada de pedido y30 empleados de entrada de pedido). Esta red se simplifica con el propósito de proporcionar un ejemplo fácil deentender.Concentrador o red de área localRed externaVarias redes externas con funciones similaresEstación de trabajoVarias estaciones de trabajo con funciones similaresFIGURA 16.9Use símbolos especiales al dibujardiagramas de descomposiciónde red y de conectividad deconcentrador.www.xlibros.com
534 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADRed deWorld’sTrendDivisión demarketingDivisiónestado-unidenseDivisióncanadienseDivisiónmexicanaAdminis-traciónAlmacénestado-unidenseAlmacénmexicanoGerente deentrada depedidoEmpleados deentrada depedido(4)Gerente deentrada depedidoEmpleados deentrada depedido(8)Gerente deentrada depedidoEmpleados deentrada depedido(30)Gerente depublicidadPublicacionesde catálogosProveedores(21)AlmacéncanadienseFIGURA 16.10Un diagrama de descomposiciónde red para World’s Trend.CREACIÓN DE UN DIAGRAMA DE CONECTIVIDAD DE CONCENTRADOR El diagrama de conectividad deconcentrador es útil para mostrar cómo se conectan los concentradores principales. En World’s Trend (véase lafigura 16.11) hay cuatro concentradores principales conectados entre sí. Además, hay concentradores externos(proveedores) que necesitan ser notificados cuando el nivel de inventario baja a un cierto punto, etc. Cada una delas tres divisiones de país se conecta a los 21 proveedores; sin embargo, la división de marketing no se necesitaconectar a los proveedores.División demarketingDivisiónmexicanaDivisióncanadienseDivisiónestado-unidense50 millas625 millas1–3,500 millas10–3,500 millas2,750 millas50–3,500 millas Proveedores(21)FIGURA 16.11Un diagrama de conectividad deconcentrador para World’s Trend.www.xlibros.com
CAPÍTULO 16 • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD 535Para producir un diagrama de conectividad de concentradores eficaz, empiece por dibujar todos los concen-tradores. Después experimente (quizás haciendo primero un bosquejo en una hoja de papel) para ver qué víncu-los son necesarios. Una vez hecho esto, puede volver a dibujar el diagrama para que sea atractivo e informe biena los usuarios.EXPANSIÓN DEL DIAGRAMA DE CONECTIVIDAD DE CONCENTRADORES EN UN DIAGRAMA DE CONECTIVIDAD DEESTACIONES DE TRABAJO El propósito del modelado de redes es mostrar la conectividad de las estaciones detrabajo con un cierto nivel de detalle. Para ello hay que expandir el diagrama de conectividad de concentradores.La figura 16.12 muestra cada una de las 33 estaciones de trabajo para la división estadounidense y cómo sedeben conectar.Dibuje los diagramas para este nivel examinando el tercer nivel del diagrama de descomposición de red.Agrupe artículos tales como Gerente de entrada de pedido y Empleados de entrada de pedido, debido a que yareconoce que se deben conectar. Use un símbolo especial para mostrar múltiples estaciones de trabajo e indiqueen paréntesis el número de estaciones de trabajo similares. En nuestro ejemplo, hay 30 empleados de entrada depedido.En el perímetro del diagrama, coloque estaciones de trabajo que se deben conectar a otros concentrado-res. De esta forma, será más fácil representar estas conexiones usando flechas. Dibuje las conexiones exter-nas en un color diferente o use flechas más gruesas. Por lo general, las conexiones externas están a grandesdistancias. Por ejemplo, la administración se conecta a la división de marketing, la cual está a 50 millas,y también a las divisiones canadiense y mexicana. El almacén necesita comunicarse directamente con losalmacenes canadiense y mexicano en caso de que sea posible obtener la mercancía de otro almacén. El ge-rente de entrada de pedido y los empleados de entrada de pedido no tienen que estar conectados con nadiefuera de su LAN.VENTAJAS DE LOS SISTEMAS DISTRIBUIDOS Los sistemas distribuidos permiten el almacenamiento de datos enlugares donde no estorben a las transacciones de tiempo real en línea. Por ejemplo, el tiempo de respuesta en lasconsultas se podría mejorar si no todos los registros necesitan ser investigados antes de que se dé una respuesta.Además, los usuarios no necesitan los datos todo el tiempo, de modo que se pueden almacenar en medios menoscaros en un sitio diferente y se pueden acceder sólo cuando sea necesario.El uso de sistemas distribuidos también puede bajar los costos de equipo, debido a que no todas las partesdel sistema necesitan desempeñar todas las funciones. Se hace posible compartir algunas habilidades tales comoprocesamiento y almacenamiento.300 pies250 pies200–250 pies50–100 pies500 piesA la división canadiense575 millas50–3,500 millasA los proveedores50 millasA la división demarketingA la división mexicana2,800 millasA la división canadiense575 millasA la división mexicana2,800 millasGerente deentrada depedidoEmpleadosde entradade pedido(30)Adminis-traciónAlmacénFIGURA 16.12Un diagrama de conectividad deestaciones de trabajo para World’sTrend.www.xlibros.com
536 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADLos sistemas distribuidos también pueden ayudar a bajar los costos al permitir la flexibilidad en la eleccióndel fabricante, debido a que el enfoque total de redes se centra en la comunicación entre nodos y los fabricanteshacen componentes compatibles. Esta compatibilidad permite al usuario tomar decisiones de compra con baseen el precio así como en la funcionalidad. Además, al principio, los sistemas distribuidos pueden ser menoscostosos que los sistemas grandes porque es posible diseñar para la expansión sin realmente tener que comprarel hardware en el momento que el sistema se implementa. El desarrollo de intranets corporativas es una formaanticipada de conectar a una red a los miembros de la organización, una forma que también puede servir comomedio para reducir los aspectos problemáticos de Internet (tal como navegar sin objeto por Internet en horas deoficina o posibles fallas de seguridad causadas por la falta de firewall) y al mismo tiempo como apoyo al trabajode grupo con aplicaciones útiles. Las extranets formadas con proveedores y otros socios importantes también sonexcelentes formas de demostrar que un negocio está orientado hacia el exterior y es accesible. En la figura 16.13se mencionan ventajas de los sistemas distribuidos.DESVENTAJAS DE LOS SISTEMAS DISTRIBUIDOS Los sistemas distribuidos presentan algunos problemas únicosque los sistemas de cómputo centralizados no poseen. El analista necesita pesar estos problemas contra lasventajas presentadas y plantearlos también con la empresa interesada.El primer problema es la confiabilidad de la red. Para hacer de una red un recurso en lugar de una carga,debe ser posible transmitir, recibir, procesar y almacenar datos de forma confiable. Si hay demasiados problemascon la confiabilidad del sistema, éste se abandonará.La distribución de gran potencia de cómputo a individuos incrementa la amenaza a la seguridad debido alacceso extendido. La necesidad de contraseñas confidenciales, salas de cómputo seguras y capacitación de segu-ridad adecuada al personal son cuestiones que se multiplican cuando se implementan sistemas distribuidos.Los analistas de sistemas que crean sistemas distribuidos necesitan enfocarse en la red o en el aspecto coor-dinado de los sistemas distribuidos. Su poder reside en la capacidad de interactuar como grupos de trabajo deusuarios que comparten datos. Si el analista de sistemas ignora o resta importancia a la relación entre los subsis-temas, está creando más problemas de los que está resolviendo. En la figura 16.14 se mencionan las desventajasde los sistemas distribuidos.CAPACITACIÓN DE USUARIOSLa capacitación es un proceso educativo en el que participan los analistas de sistemas con los usuarios. El usua-rio se ha involucrado en todo el ciclo de vida de desarrollo de sistemas, por lo que ahora el analista debe teneruna valoración exacta de los usuarios que se deben capacitar.• Permiten el almacenamiento remoto de datos en línea ytransacciones en tiempo real• Permiten un medio menos caro de almacenamiento dedatos cuando los usuarios no los necesitan continuamente• Reducen el costo de equipo debido a que no todas las partesdel sistema necesitan desempeñar todas las funciones• Reducen el costo de equipo al permitir la flexibilidad en laelección de un fabricante• Al principio son menos costosos que los sistemas grandesdebido a que la expansión se puede planear sin tener quecomprar hardwareVentajas de los sistemas distribuidosFIGURA 16.13Hay cinco ventajas principales encuanto a crear sistemasdistribuidos.• Dificultad para lograr un sistema confiable• Las preocupaciones de seguridad se incrementan proporcionalmente cuandomás personas tienen acceso al sistema• Los analistas deben hacer énfasis en la red y las interacciones que éstaproporciona; además deben restar importancia al poder de los subsistemas• Escoger el nivel erróneo de cómputo para el soporte (por ejemplo,personas en lugar de departamentos, departamentos en lugar desucursales)Desventajas de los sistemas distribuidosFIGURA 16.14Las cuatro desventajas de lossistemas distribuidos.www.xlibros.com
CAPÍTULO 16 • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD 537Generalmente, en la implementación de proyectos grandes, el analista administra la capacitación, en lugarde estar involucrado personalmente en ella. Uno de los recursos más valiosos que el analista puede aportar encualquier situación de capacitación es la habilidad de ver el sistema desde el punto de vista del usuario. El ana-lista nunca debe olvidar lo que es enfrentar un nuevo sistema. Esas recopilaciones pueden ayudar a analistas aidentificarse con los usuarios y facilitar su capacitación.Estrategias de capacitaciónLos factores que determinan las estrategias de capacitación son las personas que serán capacitadas y quiénes lascapacitarán. El analista tendrá que garantizar que cualquiera cuyo trabajo sea afectado por el nuevo sistema deinformación sea propiamente capacitado por el instructor correcto.A QUIÉN CAPACITAR Todas las personas que tendrán uso principal o secundario del sistema deben recibircapacitación: desde los capturistas hasta aquellos que usarán la salida para tomar decisiones sin usarpersonalmente una computadora. La cantidad de capacitación que requiere un sistema depende de cuántocambiará el trabajo de alguien debido a las nuevas interacciones requeridas por el nuevo sistema.Debe asegurarse de que los usuarios con diferentes niveles de habilidad e intereses de trabajo estén separa-dos. Habrá problemas si incluye a principiantes en las mismas sesiones de capacitación que los expertos, debidoa que los principiantes se pierden con rapidez y los expertos se aburren con los elementos básicos. En consecuen-cia, ambos grupos se pierden.PERSONAS QUE CAPACITAN A LOS USUARIOS Para un proyecto grande, se podrían usar muchos instructoresdependiendo de cuántos usuarios se deben capacitar y quiénes son. Las posibles fuentes de capacitación incluyenlo siguiente:1. Vendedores.2. Analistas de sistemas.3. Instructores externos.4. Instructores internos.5. Otros usuarios del sistema.Esta lista proporciona sólo algunas de las opciones que el analista tiene para diseñar y proporcionar la capacita-ción.Con frecuencia, los vendedores grandes proporcionan uno o dos días de sesiones de capacitación sobre suequipo como parte de los beneficios de servicio ofrecidos cuando las corporaciones compran software COTScaro. Estas sesiones incluyen conferencias y capacitación práctica en un entorno específico. También pueden ex-tender la experiencia con grupos de usuarios en línea, blogs dedicados o conferencias anuales de usuarios.Debido a que los analistas de sistemas conocen a las personas y al sistema de la organización, con frecuenciapueden proporcionar buena capacitación. El uso de analistas para los propósitos de capacitación depende de sudisponibilidad, debido a que también se espera que vigilen el proceso de implementación completo.En ocasiones, la organización contrata instructores externos para colaborar en la capacitación. Éstos podríantener gran experiencia en capacitar a las personas en cómo usar una variedad de computadoras, pero podrían nodar la capacitación práctica que algunos usuarios necesitan. Además, tal vez no tengan la capacidad de personali-zar suficientemente sus presentaciones para hacerlas significativas para los usuarios.Los instructores internos de tiempo completo con frecuencia están familiarizados con el personal y puedenadaptar los materiales a sus necesidades. Una de las desventajas de los instructores internos es que podrían tenerexperiencia en áreas aparte de los sistemas de información y por consiguiente podrían carecer del alto grado de ex-periencia técnica que los usuarios requieren.También es posible asignar a cualquiera de estos instructores para que capacite a un grupo pequeño de per-sonas de cada área funcional que estará usando el nuevo sistema de información. A su vez, estas personas se pue-den usar para capacitar al resto de los usuarios. Este enfoque puede funcionar bien si los aprendices originalestodavía tienen acceso a los materiales e instructores como recursos cuando ellos mismos proporcionen la capaci-tación. De lo contrario, esto podría acabar como una situación de prueba y error en lugar de una estructurada.Lineamientos para la capacitaciónEl analista tiene cuatro lineamientos principales para establecer la capacitación: 1) establecer objetivos medibles,2) usar métodos de capacitación apropiados, 3) seleccionar sitios de capacitación convenientes y 4) emplear ma-teriales de capacitación entendibles.OBJETIVOS DE LA CAPACITACIÓN Quien está siendo capacitado dicta, en gran medida, los objetivos de lacapacitación. Es necesario explicar claramente los objetivos de capacitación para cada grupo. Los objetivosbien definidos son de gran ayuda permitiendo a los aprendices saber lo que se espera de ellos. Además, loswww.xlibros.com
538 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADobjetivos permiten evaluación de capacitación cuando están completos. Por ejemplo, los operadores deben saberdichos elementos esenciales como encender la máquina, qué hacer cuando ocurren errores comunes, solucionarproblemas básicos y cómo acabar un proceso de entrada.MÉTODOS DE CAPACITACIÓN Cada usuario y operador necesitará capacitación ligeramente diferente. Hasta ciertopunto, sus trabajos determinan lo que necesitan saber, y sus personalidades, experiencia y antecedentes determinancómo aprenden mejor. Algunos usuarios aprenden mejor viendo, otros oyendo y otros haciendo. Debido a quenormalmente no es posible personalizar totalmente la capacitación, una combinación de métodos es a menudo lamejor forma de proceder. Así, se satisface a la mayoría de los usuarios mediante un método u otro.Los métodos para aquellos que aprenden mejor viendo incluyen demostraciones de equipo y exposición paramanuales de capacitación. Aquellos que aprenden mejor oyendo se beneficiarán de las conferencias sobre losprocedimientos, discusiones y sesiones de preguntas y respuestas entre instructores y aprendices. Aquellos queaprenden mejor haciendo necesitan experiencia práctica con el nuevo equipo. Para los operadores de computa-dora, la experiencia práctica es esencial, mientras que un gerente de control de calidad para una línea de produc-ción sólo podría necesitar ver la salida, aprender a interpretarla y saber cuándo se espera que llegue.SITIOS DE CAPACITACIÓN La capacitación se lleva a cabo en muchas ubicaciones, algunas de las cuales son másfavorables para aprender que otras. Los grandes vendedores de computadoras proporcionan ubicaciones remotasespeciales donde se mantiene equipo operable en forma gratuita. Sus instructores ofrecen experiencia práctica asícomo seminarios en situaciones que permiten a los usuarios concentrarse en aprender el nuevo sistema. Una delas desventajas de la capacitación remota es que los usuarios están fuera del contexto organizacional en el cualfinalmente deberán operar.La capacitación en las instalaciones de la organización a la cual pertenecen los usuarios también es posiblecon varios tipos diferentes de instructores. La ventaja es que los usuarios ven el equipo tal como estará cuandosea totalmente operacional dentro del contexto organizacional. Una desventaja seria es que los aprendices confrecuencia se sienten culpables de no cumplir sus tareas rutinarias de trabajo si permanecen en el lugar de la ca-pacitación. En estos casos, no se puede lograr una total concentración en la capacitación.O P O R T U N I D A D D E C O N S U L T O R Í A 1 6 . 4Puede guiar un pez al agua...pero no puede hacer que la tomeSam Monroe, Belle Uga, Wally Ide y usted conforman un equipode análisis de sistemas de cuatro miembros que se dedica a desarro-llar un sistema de información para ayudar a los gerentes a monito-rear y controlar la temperatura del agua, la cantidad de pecesliberados y otros factores en un gran criadero comercial de peces.(En la Oportunidad de consultoría 6.3, “Incubar un pez” vimos porúltima vez a sus compañeros, cuando le pidieron a usted, en su ca-lidad de cuarto miembro del equipo, que les ayudara a resolver unproblema relacionado con la entrega a tiempo de un prototipo delsistema).Con su participación, el equipo resolvió satisfactoriamente eseapuro, y el proyecto continúa. Ahora se encuentran discutiendo lacapacitación que han empezado a impartir a los gerentes y otrosusuarios del sistema. A causa de algunos contratiempos con la pla-nificación, han decidido reducir el número de sesiones de capacita-ción que impartirán, lo cual ha dado como resultado que enocasiones algunos usuarios de varios niveles administrativos y dis-tintos grados de experiencia con las computadoras se reúnan en lasmismas sesiones de capacitación.Laurie Hook, una de las operadoras que recibe capacitación,ha estado en el mismo “tanque” de capacitación con Wade Boot,uno de los gerentes con quienes usted ha trabajado. Tanto Lauriecomo Wade han acudido, cada quien por su parte, a plantear susquejas al equipo.Wade le dijo a usted: “Estoy muy molesto porque tengo queteclear mis propios datos en las sesiones de capacitación. El Missis-sippi se congelará antes de que yo haga eso en mi trabajo. Tengo quesaber cuándo esperar la salida y cómo interpretarla cuando llegue.No invertiré tiempo en las sesiones de capacitación si no puedosaber eso”.Laurie, quien comparte las sesiones de capacitación con Wade,también se quejó con su grupo. “Deberíamos practicar más en lassesiones de capacitación. Todo lo que hacemos es escuchar muchateoría, como en la escuela. Pero no sólo eso, sino que a los gerentesdel grupo les gusta contar una y otra vez las increíbles historias queles han ocurrido con el viejo sistema. Es aburrido. Lo que yo quieroes saber cómo operar el sistema. Para mí, es decepcionante porqueno estoy aprendiendo lo que ustedes me dijeron, y aparte de eso, contodos los jefes ahí, me siento como pez fuera del agua.”¿Qué problemas se están presentando en las sesiones de capa-citación? ¿Cómo se pueden resolver, tomando en cuenta los proble-mas de planificación que se mencionaron? ¿Qué consejos básicossobre la preparación de sesiones de capacitación pasó por alto suequipo? Escriba una respuesta de una página a estas preguntas.www.xlibros.com
CAPÍTULO 16 • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD 539Los sitios de capacitación remota también están disponibles mediante un pago a través de consultores y ven-dedores. Los sitios de capacitación se pueden establecer en lugares de alquiler tales como un salón de hotel oinstalaciones permanentes mantenidas por los instructores. Estos arreglos permiten a los trabajadores liberarse delas demandas regulares del trabajo, pero no podrían proporcionar equipo para la capacitación práctica.MATERIALES DE CAPACITACIÓN En la planeación de capacitación de usuarios, los analistas de sistemas debencomprender la importancia de los materiales de capacitación bien preparados. Estos materiales incluyen manualesde capacitación; casos de capacitación, en los cuales los usuarios se asignan para trabajar a través de un caso queincluye la mayoría de las interacciones normalmente encontradas con el sistema, y prototipos y muestras desalidas. Los usuarios de sistemas grandes a veces se podrán capacitar en simulaciones detalladas basadas en Webo software que es idéntico a lo que se escribe o se compra. La mayoría de los vendedores de software COTSproporciona tutoriales en línea que ilustran las funciones básicas, y los distribuidores podrían mantener sitiosWeb que ofrecen páginas dedicadas a responder preguntas frecuentes (FAQ), las cuales se pueden descargar eimprimir. Los cambios a los manuales también se pueden recabar de los sitios Web de muchos vendedores.Debido a que el entendimiento del sistema por parte de los usuarios depende de ellos, los materiales de ca-pacitación se deben escribir claramente para el público correcto con un mínimo de jerga. Los materiales de capa-citación también deben estar bien indexados y disponibles para cualquiera que los necesite. En la figura 16.15 seproporciona un resumen de consideraciones para objetivos de capacitación, métodos, sitios y materiales.CONVERSIÓN A UN NUEVO SISTEMAUn tercer enfoque para la implementación es convertir físicamente el sistema de información viejo a uno nuevoo modificado. Hay muchas estrategias de conversión disponibles para analistas y también un enfoque de contin-gencia que tiene en cuenta diversas variables organizacionales para decidir qué estrategia de conversión usar. Nohay una forma que sea siempre la más apropiada para proceder con la conversión. No podemos subestimar laimportancia de diseñar y programar adecuadamente la conversión (la cual con frecuencia tarda muchas semanas),el archivo de respaldo y la seguridad adecuada.Estrategias de conversiónEn la figura 16.16 se presentan las cinco estrategias para convertir del sistema viejo al nuevo:1. Conversión directa.2. Conversión paralela.3. Conversión gradual o por fases.4. Conversión modular.5. Conversión distribuida.Cada enfoque de conversión se describe en las siguientes subsecciones.CONVERSIÓN DIRECTA La conversión directa significa que en una fecha especificada, el sistema viejo seabandona y el nuevo sistema se pone en uso. La conversión directa puede tener éxito sólo si antes se lleva a cabouna comprobación extensa, y funciona mejor cuando se pueden tolerar algunos retrasos en el procesamiento. Laconversión directa se considera un enfoque arriesgado para la conversión. Podrían ocurrir trastornos en el entornolaboral si los usuarios se ofenden porque se les obliga a usar un sistema desconocido sin recursos. Por último, nohay ninguna forma adecuada para comparar los nuevos resultados con los viejos.Elementos Factores relevantesObjetivos de capacitación Dependen de los requerimientos del trabajo del usuarioSitios de capacitaciónMateriales de capacitaciónDependen del trabajo del usuario, personalidad, antecedentes yexperiencia; usa una combinación de conferencia, demostración,práctica y estudioDependen de los objetivos de capacitación, costo, disponibilidad;sitios gratis del distribuidor con equipo operable; instalacionesinternas; instalaciones alquiladasDependen de las necesidades del usuario; manuales operativos, casos,prototipos de equipos y salida; tutoriales en líneaMétodos de capacitaciónFIGURA 16.15Los objetivos de capacitación,métodos, sitios y materiales estánsujetos a muchos factores.www.xlibros.com
540 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADCONVERSIÓN PARALELA La conversión paralela se refiere a ejecutar al mismo tiempo el sistema viejo y el nuevo,en paralelo. Cuando se obtienen los mismos resultados todo el tiempo, el nuevo sistema se pone en uso y elviejo se detiene. Una ventaja de ejecutar ambos sistemas en paralelo es la posibilidad de verificar los nuevosdatos contra los viejos para percibir cualesquier errores en el procesamiento del nuevo sistema. Las principalesdesventajas incluyen el costo de ejecutar dos sistemas al mismo tiempo y el agobio en los empleados devirtualmente doblar su carga de trabajo durante la conversión.CONVERSIÓN GRADUAL La conversión gradual, o por fases, intenta combinar las mejores características de los dosplanes previamente mencionados, sin incurrir en todos los riesgos. En este plan, el volumen de las transaccionesmanejado por el nuevo sistema aumenta gradualmente conforme el sistema se introduce por fases. Las ventajasde este método incluyen permitir a usuarios que se involucren gradualmente con el sistema, la posibilidad de des-cubrir y recuperar errores sin desperdiciar mucho tiempo y la capacidad de agregar características una por una.Las metodologías ágiles tienden a usar esta metodología de conversión.CONVERSIÓN MODULAR La conversión modular usa la construcción de subsistemas independientes y ope-racionales para cambiar de los sistemas viejos a los nuevos de forma gradual. Conforme se modifica y aceptacada módulo, se pone en uso. Una ventaja es que cada módulo se prueba completamente antes de ser usado.Otra ventaja es que los usuarios se familiarizan con cada módulo conforme se vuelve operacional. Esta retro-alimentación ha ayudado a determinar los atributos finales del sistema. Las metodologías orientadas a objetosutilizan con frecuencia esta metodología.CONVERSIÓN DISTRIBUIDA La conversión distribuida se refiere a una situación en que se contemplan muchasinstalaciones del mismo sistema, como es el caso en actividades bancarias o franquicias tal como restauranteso tiendas de ropa. Una conversión completa se hace (con cualquiera de los cuatro enfoques consideradopreviamente) en un sitio. Cuando esta conversión se completa exitosamente, se prosigue con las demás. Unaventaja de la conversión distribuida es que se pueden detectar y contener un problema antes de que repercutasimultáneamente en todos los sitios. Una desventaja es que incluso cuando una conversión es exitosa, cada sitiotendrá su propia gente y cultura, además de sus propias peculiaridades regionales y locales para trabajar, y sedeben manejar en consecuencia.Otras consideraciones de conversiónLa conversión también trae consigo otros detalles para el analista, los cuales incluyen lo siguiente:1. Pedir equipo (hasta tres meses antes de la conversión planeada).2. Pedir cualesquier materiales necesarios que se proporcionan externamente al sistema de información, talcomo cartuchos de tinta, papel, formularios impresos previamente y los medios magnéticos.3. Designar un gerente para supervisar, o supervisar personalmente, la preparación del sitio de la instalación.Conversión directaConversión distribuidaConversión modularConversión gradualConversión paralelaMétodo de conversión Cambios a través del tiempoFIGURA 16.16Cinco estrategias de conversiónpara los sistemas de información.www.xlibros.com
CAPÍTULO 16 • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD 5414. Planear, fijar y supervisar a programadores y personal de captura de datos que deben convertir todos losarchivos y bases de datos relevantes.Para muchas implementaciones, su papel principal será estimar con precisión el tiempo necesario para cadaactividad, nombrar a las personas para manejar cada subproyecto y coordinar su trabajo. Para proyectos máspequeños, hará mucho del trabajo de conversión por usted mismo. Muchas de las técnicas de administración deproyecto que vimos en el capítulo 3, tal como las gráficas de Gantt, PERT, análisis de puntos de función y la co-municación exitosa con los miembros del equipo, son útiles para planear y controlar la implementación.Metáforas organizacionales y su relación con los sistemas exitososEsté consciente de las metáforas organizacionales cuando intente implementar un sistema que haya desarrolladorecientemente. Nuestra investigación ha sugerido que el éxito o fracaso de un sistema podrían estar relacionadocon las metáforas que utilizan los miembros de la organización.Cuando las personas en la organización describen la compañía como un zoológico, puede inferir que laatmósfera es caótica; si se describe como una máquina, todo está funcionando en un estilo ordenado. Cuandola metáfora predominante es guerra, expedición o selva, el ambiente también es caótico, aunque las metáforasguerra y expedición se orientan hacia una meta de la organización, mientras que las metáforas zoológico yselva no.Además de máquina, las metáforas tales como sociedad, familia y juego significan orden y reglas. Aunquelas metáforas máquina y juego se orientan a un objetivo, las metáforas sociedad y zoológico no enfatizan elobjetivo de la compañía, sino que permiten a los individuos en la corporación establecer sus propios estánda-res y premios. Otra metáfora, organismo, parece equilibrada entre orden y caos, objetivos corporativos e indi-viduales.Nuestra investigación sugiere que el éxito o fracaso de un sistema podrían tener algo que ver con la metáforapredominante. La figura 16.17 muestra que un MIS tradicional tenderá a tener éxito cuando la metáfora predomi-nante sea sociedad, máquina o familia, pero tal vez no podría tener éxito si la metáfora fuera guerra o selva (dosmetáforas caóticas). Sin embargo, hay que tener en cuenta que los sistemas competitivos probablemente tendránéxito si la metáfora es guerra.Las metáforas positivas parecen ser juego, organismo y máquina. Las metáforas negativas parecen ser selvay zoológico. Las otras (expedición, guerra, sociedad y familia) permiten calcular un nivel de éxito dependientedel tipo de sistema de información que se desarrolle. Se necesita hacer más investigación en esta área. Mientrastanto, el analista de sistemas debe estar consciente de que las metáforas comunicadas en las entrevistas podríanser significativas e incluso podrían ser un factor de contribución hacia el éxito de la implementación del sistemade información.Éxito menosprobable conestas metáforasÉxito másprobable conestas metáforasGuerraJunglaGuerraExpediciónJunglaZoológicoFamiliaSociedadMáquinaFamiliaSociedadOrganismoMIS tradicionalSistema de soporte de decisionesSistemas expertos/AISociedadZoológicoZoológicoFamiliaSociedadExpediciónZoológicoJuegoOrganismoMáquinaExpediciónJuegoOrganismoGuerraJuegoOrganismoOrganismoJuegoSistemas cooperativosSistemas competitivosSistemas de información ejecutivaTipo de sistema de informaciónFIGURA 16.17Las metáforas organizacionalespodrían contribuir al éxito ofracaso de un sistema deinformación.www.xlibros.com
542 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADASPECTOS DE SEGURIDAD PARA LOS SISTEMAS TRADICIONALESY LOS BASADOS EN WEBLa seguridad de las instalaciones de cómputo, almacén de datos y la información generada es parte de una con-versión exitosa. Como vimos en el capítulo 1, el reconocimiento de la necesidad de seguridad es una consecuen-cia natural de la creencia de que la información es un recurso organizacional importante. Con las transaccionescada vez más complejas y muchos intercambios innovadores, la Web ha producido un incremento en las preocu-paciones de seguridad para el mundo profesional de SI.Es útil pensar en la seguridad de sistemas, datos e información en un continuo imaginario que va desdeseguridad total hasta acceso abierto por completo. Aunque no hay tal cosa como un sistema totalmente seguro,las acciones de los analistas y usuarios pretenden mover los sistemas hacia el lado más seguro del espectro,disminuyendo la vulnerabilidad del sistema. Se debe observar que conforme más personas en la organizaciónobtienen mayor potencia de cómputo, obtienen acceso a la Web, o se conectan a las intranets y extranets, laseguridad se vuelve cada vez más difícil y compleja. A veces, las organizaciones contratarán a un consultorde seguridad para trabajar con el analista de sistemas cuando la seguridad es crucial para el funcionamientoexitoso.La seguridad es responsabilidad de todos aquellos que están en contacto con el sistema y sólo es tan buenacomo la conducta o política menos estricta en la organización. La seguridad tiene tres aspectos interrelacionados:físico, lógico y conductual. Los tres deben trabajar juntos si deseamos que la calidad de seguridad permanezcaalta.Seguridad físicaLa seguridad física se refiere a proteger el sitio donde se encuentra la computadora, su equipo y software a travésde medios físicos. Puede incluir acceso controlado a las salas de cómputo por medio de signos legibles por lamáquina, sistemas biométricos o un registro de entrada y salida del sistema por un humano, así como el uso decámaras de televisión de circuito cerrado para supervisar las áreas de cómputo, respaldando con frecuencia losdatos y almacenando los respaldos en un área a prueba de fuego o de agua, a menudo en una ubicación remotasegura.Además, el equipo de cómputo pequeño se debe asegurar para que un usuario típico no pueda moverlo y sedebe garantizar el suministro ininterrumpido de energía eléctrica. Las alarmas que notifican a las personas apro-piadas en caso de fuego, inundación o intrusión no autorizada de una persona deben estar en todo momento enfuncionamiento activo.El analista debe tomar las decisiones acerca de la seguridad física junto con los usuarios cuando esté pla-neando las instalaciones de cómputo y la compra de equipo. Sin duda la seguridad física puede ser mucho mejorsi se planea con antelación a la instalación real y si las salas de cómputo se dotan de equipo de seguridad especialal momento de construirlas, en lugar de equiparse después de que se hayan construido.Seguridad lógicaLa seguridad lógica se refiere a los controles lógicos en el software. Los controles lógicos son conocidos porla mayoría de los usuarios como contraseñas o códigos de autorización de alguna clase. Cuando se usan, per-miten al usuario entrar al sistema o a una parte específica de una base de datos con una contraseña correcta.Sin embargo, las contraseñas se manejan de manera descuidada en muchas organizaciones. Los emplea-dos han escuchado por casualidad gritar una contraseña en las oficinas atestadas, grabar las contraseñas parasus pantallas y compartir las contraseñas personales con empleados autorizados que han olvidado las suyas.Se ha desarrollado software de cifrado especial para proteger las transacciones comerciales en Web y lastransacciones comerciales están proliferando. Sin embargo, el fraude de Internet también ha aumentado brusca-mente, y hay pocas autoridades capacitadas en identificar a los delincuentes y se evidencia una mentalidad de“salvaje oeste” o “última frontera” en esos casos cuando las autoridades han podido aprehender a los delincuen-tes de Web.Una forma para que las redes reduzcan el riesgo de exposición al desafío de la seguridad del mundo ex-terior es construir un firewall o un sistema similar. Un firewall construye una muralla entre la red interna y laexterna de una organización (tal como Internet). Se asume que la red interna es confiable y segura, mientrasque Internet no lo es. Se pretende que los firewalls impidan la comunicación entrante o saliente de la red queno haya sido autorizada y que no se requiera. Un sistema firewall no es un remedio perfecto para la seguridadorganizacional y de Internet; sin embargo, es una capa adicional de seguridad que ahora se acepta amplia-mente. Todavía no hay ninguna forma totalmente integrada de solucionar los problemas de seguridad con laswww.xlibros.com
CAPÍTULO 16 • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD 543redes internas y externas, pero merecen la atención de los analistas al diseñar cualquier sistema nuevo o me-jorado.Los controles lógicos y físicos son importantes, pero no son suficientemente claros para proporcionar la se-guridad adecuada. Los cambios conductuales también son necesarios.Seguridad conductualLas expectativas conductuales de una organización están implícitas en sus manuales de políticas e incluso en le-treros anunciados en las salas de trabajo y los comedores, como vimos en el capítulo 5. Sin embargo, la conductaque los miembros de la organización interiorizan también es crítica para el éxito de los esfuerzos de seguridad(una razón por la que los firewalls no son totalmente a prueba de ataques es que muchos ataques a los sistemasde información provienen del interior de la organización).La seguridad puede empezar con la identificación de empleados que en algún momento tendrán acceso alas computadoras, datos e información, para asegurar que sus intereses son consistentes con los intereses de laorganización y que entienden por completo la importancia de llevar a cabo los procedimientos de seguridad. Esnecesario escribir, distribuir y actualizar las políticas con respecto a la seguridad para que los empleados esténtotalmente conscientes de las expectativas y responsabilidades. Es típico que el analista de sistemas primero ten-drá contacto con los aspectos conductuales de la seguridad. Algunas organizaciones han escrito reglas o políticasque prohíben a los empleados navegar en Web durante horas de trabajo o incluso prohíben totalmente la navega-ción de Web, si el equipo de la compañía está involucrado. Otras corporaciones usan software de bloqueo paralimitar el acceso a los sitios Web que se consideran inaceptables en el lugar de trabajo, tal como sitios de juegos,apuestas o pornográficos.Parte del aspecto conductual de la seguridad es supervisar la conducta a intervalos irregulares para cercio-rarse de que se están siguiendo los procedimientos apropiados y corregir cualesquier conductas que se podríandeteriorar con el tiempo. Hacer que el sistema registre el número de inicios de sesión fallidos de los usuarios esuna forma de supervisar si usuarios no autorizados están intentando iniciar sesión en el sistema. Es convenienteinventariar periódica y frecuentemente el equipo y software. Además, es necesario examinar las sesiones largasinusuales o el acceso al sistema atípico después de las horas de oficina.Los empleados deben entender claramente lo que se espera de ellos, lo que se prohíbe y la magnitud de susderechos y responsabilidades. Debe comunicar al personal acerca de toda la supervisión que se está haciendo oque se está contemplando y debe proporcionar la razón para esto. Dicha comunicación debe incluir el uso de cá-maras de vídeo, monitoreo de software y telefónico.La salida generada por el sistema se debe reconocer por su potencial de poner a la organización en riesgo enalgunas circunstancias. Los controles para la salida incluyen pantallas que sólo se pueden acceder mediante lacontraseña, la clasificación de información (es decir, a quién se puede distribuir y cuándo) y el almacenamientoseguro de documentos impresos y almacenados, sin importar el formato.En algunos casos, es necesario tomar medidas para destruir documentos clasificados o confidenciales. Losservicios de destrucción o pulverización se pueden contratar con una empresa externa que, por una cuota, des-truirá medios magnéticos, cartuchos de impresora y papel. Una corporación grande puede destruir anualmentemás de 34,000 kilos de material de salida en una variedad de medios.Consideraciones especiales de seguridad para el comercio electrónicoSe sabe bien que los intrusos pueden violar la integridad de cualquier sistema de cómputo. Como analista, nece-sita tomar diversas precauciones para proteger la red de cómputo de las amenazas de seguridad en Web internasy externas. Varias acciones y productos le pueden ayudar:1. Software antivirus.2. Productos de filtración de correo electrónico que proporcionan servicios de exploración y filtrado de correoelectrónico y archivos adjuntos, basado en políticas para proteger a las compañías del correo electrónicoentrante y saliente. La exploración del correo entrante protege contra ataques de spam (correo electrónico nosolicitado, como los anuncios publicitarios) y la exploración del correo saliente protege contra la pérdida deinformación propietaria.3. Productos de filtración de URL que proporcionan a los empleados acceso a Web por usuario, por grupos deusuarios, por computadoras, por tiempo o por el día de la semana.4. Firewalls, gateways y redes privadas virtuales que impidan a los hackers acceder a una red corporativa.5. Productos de detección de intrusión y antiphishing que continuamente supervisan el uso, proporcionanmensajes e informes y sugieren acciones a tomar.www.xlibros.com
544 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD6. Productos de administración de vulnerabilidad que evalúan los riesgos potenciales en un sistema ydescubren e informan las vulnerabilidades. Algunos productos correlacionan las vulnerabilidades para quesea más fácil encontrar la raíz de la fuga de seguridad. El riesgo no se puede eliminar, pero este softwarepuede ayudar a manejarlo al equilibrar el riesgo de seguridad contra los costos de eliminarlos.7. Tecnologías de seguridad tal como la capa de conexiones seguras (SSL) para la autenticación.8. Tecnologías de cifrado tales como la transacción electrónica segura (SET).9. Infraestructura de clave pública (PKI) y certificados digitales (obtenidos de una compañía tal comoVerisign). El uso de certificados digitales asegura que el remitente informado del mensaje realmente sea lacompañía que envió el mensaje.Consideraciones de privacidad para el comercio electrónicoEl otro aspecto de la seguridad es la privacidad. Para hacer su sitio Web más seguro, debe pedir a los usuarios oclientes que renuncien a cierta privacidad.Como diseñador de un sitio Web, reconocerá que la empresa para la que usted diseña ejerce mucho podersobre los datos que proporcionan sus clientes. Los mismos principios de conducta ética y legal se aplican al di-seño de sitios Web como al diseño de cualquier aplicación tradicional que acepta datos personales de clientes.Sin embargo, la Web permite recopilar datos con más rapidez y diferentes (como los hábitos de navegación delcliente). En general, la tecnología de la información hace posible almacenar más datos en los almacenes de da-tos, procesarlos y distribuirlos más ampliamente.Cada compañía para la cual usted diseña una aplicación de comercio electrónico debe adoptar una políticade privacidad. He aquí algunos lineamientos:1. Inicie con una política corporativa de privacidad. Asegúrese que se despliegue de forma prominente en elsitio Web para que todos los clientes puedan acceder la política siempre que completen una transacción.2. Solicite sólo la información que la aplicación requiera para completar la transacción en cuestión. Porejemplo, ¿es necesario para la transacción preguntar la edad o género de una persona?3. Haga opcional para los clientes completar la información personal en el sitio Web. A algunos clientes no lesimporta recibir mensajes concretos, pero siempre debe dar una oportunidad a los clientes de mantener laconfidencialidad de sus datos personales al no responder.4. Use fuentes que le permitan obtener información anónima sobre las clases de clientes. Hay compañías queofrecen al público tecnología de perfiles y soluciones de tecnología para administrar los anuncios, susobjetivos y su entrega. Esto se hace para mantener una base de datos dinámica de perfiles de clientes sinvincularlos a los individuos, respetando así los derechos de privacidad de los clientes.5. Sea ético. Evite el uso de trucos baratos que permitan a su cliente recopilar la información sobre el cliente deformas sospechosas o poco éticas. Los trucos tales como el raspado de pantalla (capturar remotamente loque está en la pantalla de un cliente) y la toma de cookies de correo electrónico son violaciones claras deprivacidad; además podrían ser ilegales.Es esencial una política coordinada de seguridad y de privacidad. Es esencial establecer estas políticas y ad-herirse a ellas al implementar una aplicación de comercio electrónico.Planeación de recuperación de desastresSin importar con qué diligencia trabajen usted y sus colegas para asegurar la seguridad y estabilidad de lossistemas, todos los empleados y los sistemas son inevitablemente vulnerables a cierto tipo de desastre naturalo provocado por los humanos, que amenaza tanto la seguridad como el mismo funcionamiento de la empresa.Algunos desastres son bastante comunes, como los cortes de energía, y podemos evaluar la probabilidad de queocurran algunos desastres, como un huracán o terremoto. Sin embargo, muchos otros son inesperados en cuantoa su ocurrencia o severidad, tal vez incluso hasta provoquen la pérdida de vidas humanas, creando caos para laspersonas y la organización en sí.Los campos relacionados con el grado de preparación y la recuperación contra los desastres son interdepen-dientes y se basan uno en el otro. El grado de preparación contra desastres incluye lo que una empresa deberíahacer si encuentra una crisis. El campo de la recuperación contra desastres se enfoca en la forma en que unaempresa puede continuar como secuela de un desastre y cómo puede restaurar los sistemas esenciales en la infra-estructura de TI. Esta sección se enfoca en la recuperación de desastres y su relación con los sistemas de infor-mación. El proceso tradicional de recuperación de desastres consiste en la planeación, el recorrido, los ejerciciosde práctica y la recuperación del desastre.www.xlibros.com
CAPÍTULO 16 • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD 545Al sufrir un desastre, la empresa se arriesga a perder personas, dinero, reputación y sus propios bienes, asícomo los de sus clientes. Es importante hacer lo correcto para minimizar las pérdidas potenciales. Los analistasdeben determinar cuál es el nivel de planeación contra desastres de la organización y qué tan bien articulado estáel rol de sistemas de información en sus planes de respuesta y recuperación en caso de desastres. Las preguntasclave que se deben hacer los analistas lo antes posible son: 1) si los empleados saben a dónde ir y 2) qué haceren caso de un desastre. La respuesta a estas preguntas lo guiará a través del proceso de planeación. La sabiduríaconvencional provee siete elementos a considerar durante y después de un desastre. Como veremos, muchos deestos elementos involucran a los sistemas de información y se relacionan de manera específica con la planeaciónque usted debe proveer como analista de sistemas.1. Identificar los equipos responsables para administrar una crisis.2. Eliminar puntos individuales de fallas.3. Determinar las tecnologías de duplicación de datos que coincidan con la agenda de la organización paraponer los sistemas en funcionamiento.4. Crear planes de reubicación y transportación detallados.5. Establecer varios canales de comunicación entre los empleados y consultores que están en el sitio, como losequipos de analistas.6. Proveer soluciones de recuperación que incluyan una ubicación remota.7. Asegurar el bienestar físico y psicológico de los empleados y otros que puedan estar físicamente presentesen el sitio de trabajo cuando ocurra un desastre.El plan de preparación para desastres debe identificar a los responsables de realizar varias decisiones fun-damentales en caso de un desastre. Hay que decidir si van a continuar o no las operaciones comerciales; cómobrindar soporte para las comunicaciones (tanto de computadora como de voz); a dónde se enviarán las personassi las instalaciones de la empresa son inhabitables; a dónde irá el personal en caso de una emergencia; ocuparsede las necesidades personales y psicológicas de las personas presentes en la empresa y los que podrían trabajaren forma virtual; y restaurar los entornos principales de cómputo y laborales.La redundancia de los datos provee la clave para eliminar puntos individuales de fallas para los servidoresque ejecutan aplicaciones Web. Como analista, usted puede ser especialmente útil para establecer este tipo derespaldo y redundancia.Algunas empresas están migrando a las redes de área de almacenamiento (SAN) para evitar parte de la ines-tabilidad asociada con los respaldos físicos en cintas magnéticas y su almacenamiento. La duplicación remotasincrónica (también conocida como discos en espejo, o data mirroring) también está ganando popularidad. Perosi las empresas están a más de 100 millas de distancia del sitio, el proceso de discos en espejo se puede ver afec-tado. La duplicación remota asíncrona envía datos a la ubicación de almacenamiento secundaria en intervalos detiempo designados. Hay opciones en línea para pequeñas empresas también.La organización debe desarrollar y distribuir a todos un memorándum de una página que contenga las rutasde evacuación y los puntos de reunión de los empleados. Las tres opciones comunes son enviar a los empleadosa sus casas, hacer que permanezcan dentro de las instalaciones o reubicarlos a una instalación de recuperaciónpreparada para continuar operando. Hay que tener en cuenta toda la gama de opciones de transportación a la horade desarrollar este memo.Los miembros de la organización y del equipo de análisis de sistemas deben ser capaces de comunicarse encaso de que se interrumpa el sistema ordinario de correo electrónico. Si no hay correo electrónico disponible paratransmitir un mensaje de emergencia, una página Web con información de emergencia o una línea telefónicapueden servir para tal fin como alternativas viables. Hace poco, varias empresas de software empezaron a ofre-cer una suite de herramientas de software que permiten la comunicación ad hoc mediante agencias de respuestade emergencia que les permiten establecer con rapidez herramientas de VoIP, conectividad Web y Wi-Fi. La dis-ponibilidad cada vez más amplia y los precios más bajos sin duda llevarán en el futuro estas importantes herra-mientas de comunicación a otros tipos de organizaciones.Para proteger mejor los sistemas de respaldo de la organización y asegurar el flujo continuo de las tran-sacciones bancarias en caso de un desastre, las nuevas regulaciones en los Estados Unidos estipulan que lasubicaciones remotas de los bancos deben estar por lo menos a 100 millas de distancia del sitio original. Comolos archivos y respaldos en papel también representan un gran problema y son muy vulnerables a los desastresnaturales y humanos, es imprescindible que las organizaciones creen un plan que les ayude a migrar hacia unproyecto de documentación digital con el fin de convertir todos sus documentos en papel a formatos electrónicos,dentro de un plazo de entre tres y cinco años después de su creación (Stephens, 2003).El soporte para los humanos que trabajan en una organización que experimenta un desastre es algo primor-dial. Debe haber suficiente agua potable a la que se tenga un fácil acceso, en especial si los empleados no pue-den salir del sitio durante varios días debido a las condiciones del clima exterior o derrumbamientos parciales deedificios. Aunque la comida es importante, el agua lo es más. También se debe proporcionar a los empleados unwww.xlibros.com
546 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADkit de seguridad que contenga agua, una mascarilla antipolvo, una linterna, barras luminosas y un silbato. Unaforma de averiguar qué debe contener un kit de provisiones contra desastres para el espacio de trabajo individuales ir al sitio Web de la Cruz Roja Americana (www.redcross.org), donde se proveen los detalles para apoyar a laspersonas en caso de desastres y hacerse cargo de ellas después de los mismos.EVALUACIÓNA lo largo del ciclo de vida del desarrollo de sistemas, el analista, los directivos y los usuarios han estado eva-luando la evolución de los sistemas de información y las redes para proporcionar retroalimentación para su me-jora eventual. La evaluación también se necesita para dar seguimiento a la implementación del sistema.Técnicas de evaluaciónEn reconocimiento de que la evaluación continua de sistemas de información y redes es importante, se han in-ventado muchas técnicas de evaluación. Estas técnicas incluyen el análisis costo-beneficio (como vimos en elcapítulo 3); los modelos que intentan estimar el valor de una decisión con base en los efectos de la información yque usan teoría de información, simulación o estadísticas bayesianas; las evaluaciones del usuario que enfatizanlos problemas de implementación y participación del usuario, y los enfoques de utilidad de sistemas de informa-ción que examinan las propiedades de la información.Cada tipo de evaluación sirve para un propósito diferente y tiene desventajas inherentes. El análisis costo-beneficio podría ser difícil de aplicar, debido a que los sistemas de información proporcionan información acercade los objetivos para la primera vez, haciendo imposible comparar el desempeño antes y después de la implemen-tación del sistema o red distribuida. El enfoque de evaluación de decisión revisada presenta dificultad, debido aque todas las variables involucradas con el diseño, el desarrollo y la implementación del sistema de informaciónno se pueden calcular o cuantificar. El enfoque de participación del usuario produce algún entendimiento paralos nuevos proyectos al proporcionar una lista de control de la conducta potencialmente disfuncional por variosmiembros organizacionales, pero enfatiza la implementación sobre otros aspectos del diseño del SI. El enfoquede utilidad del sistema de información para la evaluación puede ser más completo que otros si se extiende y seaplica de manera sistemática.El enfoque de utilidad del sistema de informaciónEl enfoque de utilidad del sistema de información para evaluar los sistemas de información puede ser una técnicacompleta y fructífera para medir el éxito de un sistema desarrollado. También puede servir como una guía en eldesarrollo de cualesquier proyectos futuros que el analista podría emprender.Las utilidades de información incluyen posesión, forma, lugar y tiempo. Para evaluar el sistema de infor-mación integralmente, estas utilidades se deben extender para incluir utilidad de actualización y utilidad delobjetivo. Después las utilidades se pueden ver para responder adecuadamente las preguntas de quién (posesión),qué (forma), dónde (lugar), cuándo (tiempo), cómo (actualización) y por qué (objetivo). En la evaluación de unsistema de inventario de sangre de la figura 16.18 se puede ver un ejemplo de este enfoque de utilidad de infor-mación.Podemos evaluar un sistema de información como exitoso si posee las seis utilidades. Si el módulo del sis-tema se juzga como “pobre” al proveer una de las utilidades, todo el módulo estará destinado a fracasar. Una ob-tención parcial de “regular” en una utilidad producirá un módulo parcialmente exitoso. Si el módulo del sistemade información se juzga como “bueno” al proveer todas las utilidades, el módulo se considera un éxito.O P O R T U N I D A D D E C O N S U L T O R Í A 1 6 . 5El dulce aroma del éxitoRecuerde que en la Oportunidad de consultoría 3.1, “El sonidomás dulce que haya sorbido”, conoció a Felix Straw. Diseñe unasolución de sistemas que resuelva los problemas que se plantearonen ese capítulo. (Sugerencia: La tecnología es importante, perotambién lo es la forma en que la utilice |a gente.). Su solución deberáenfatizar la colaboración, flexibilidad, adaptabilidad y el acceso. Usediagramas de red para ilustrar su solución. En unos párrafos, expliquede manera lógica por qué debe elegirse su solución.www.xlibros.com
CAPÍTULO 16 • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD 547UTILIDAD DE POSESIÓN La utilidad de posesión responde la pregunta de quién debe recibir la salida o, dicho de otromodo, quién debe ser responsable de tomar las decisiones. La información no tiene valor en posesión de al guienque carece de poder para hacer mejoras en el sistema o carece de habilidad de usar la información en formaproductiva.UTILIDAD DE FORMA La utilidad de forma responde la pregunta de qué tipo de salida se distribuye al encargadode tomar decisiones. Los documentos deben ser útiles para una persona específica encargada de tomar decisionesen lo que se refiere al formato y a la jerga del documento usados. Los acrónimos y títulos de columna debenser significativos para el usuario. Además, la información debe estar en un formato apropiado. Por ejemplo, elusuario no debe tener que dividir un número entre otro para obtener un porcentaje. En cambio, un porcentajese debe calcular y desplegar claramente. Al otro extremo está la presentación de muchos datos irrelevantes. Lasobrecarga de información ciertamente disminuye el valor de un sistema de información.UTILIDAD DE LUGAR La utilidad de lugar responde la pregunta de dónde se distribuye la información. Lainformación se debe entregar en el lugar donde se tomó la decisión. Se deben archivar o almacenar informes másdetallados o informes de administración anteriores para facilitar el acceso futuro.UTILIDAD DE TIEMPO La utilidad de tiempo responde la pregunta de cuándo se distribuye la información. Lainformación debe llegar antes de que se tome una decisión. La información retrasada no tiene utilidad. Al otroextremo está la entrega de información mucho tiempo antes de la decisión. Los informes se podrían volverinexactos o podrían olvidarse si se entregaron prematuramente.UTILIDAD DE ACTUALIZACIÓN La utilidad de actualización está relacionada con cómo el encargado de tomardecisiones introduce la información y la utiliza. Primero, el sistema de información tiene valor si posee laMódulos desistemas deinformaciónUtilidad deformaUtilidad detiempoUtilidad delugarUtilidad deposesiónUtilidad deactualizaciónUtilidad deobjetivoListas deinventarioÉxitoBueno. Acrónimosusados donde soniguales que los códigosde envío. Conformecrece un sistema, sepresenta demasiadainformación; estasobrecarga se hizo pararesumir la información.Pobre. Las personasque asignan la sangredesconfían de losmisteriosos númerosproducidos por lacomputadora.Bueno. Losinformes serecibieron por lomenos una horaantes de que seprogramaran losenvíos en unabase diaria.Bueno. Las listas deinventario seimprimieron en elcentro regional desangre. Las listas seentregaron a loshospitales con losenvíos actuales.Bueno. Laimplementación fuefácil debido a que loshospitales encontraronlas listas de inventariosextremadamente útiles.Bueno. Los informeslos recibieron lasmismas personasque originalmentemantuvieron losregistros manuales.Bueno. Lainformación acercade la ubicación deuna unidadparticular estuvodisponible.Pobre. Ésta no fueuna meta inmediatade la región delbanco de sangre.Los costos de envíose pasaron a lospacientes.Pobre. Hubodemasiadas personasinvolucradas con losinventarios de sangrepara participar en eldiseño del sistema.Regular. Losadministradoresresponsables deasignar a diario lasangre recibieron eloriginal.Bueno. Se imprimieronen el banco de sangre.Bueno. Losinformes seproporcionaronuna hora antes deque se tomaranlas decisiones.AsignaciónheurísticaFallaBueno. Seprevinieronausencias al llamara más donadores.Bueno. El diseño dela salida pudo habersido más participativo.Bueno. Losadministradoresinvolucrados con ladistribución yrecolección recibenel informe.Bueno. Se imprimieronen el banco de sangre.Bueno. Lospronósticos seactualizaron adiario.Bueno. Se emitió unpronóstico para cadatipo de sangre.Pronóstico acorto plazoÉxitoBueno. Los informesde resumenayudaron a reducirobsolescencias yevitar escasez.Bueno. Losadministradores desangre participaron enel diseño de losinformes.Bueno. Losadministradores desangre queoriginalmentemantienen losinformes manualesrecibieron estosreportes.Bueno. Los informesde resumen seimprimieron enel centro dondese necesitaban.Bueno. Igual quelos listados.Bueno. El informe deresumen se diseñó paralas especificaciones deformato exactas de losinformes de resumenmanuales desarrolladospor el administrador desangre de los hospitalesde la ciudad.Informes deresumen dela gerenciaÉxitoFIGURA 16.18Evaluación de información de inventario de sangre y de un sistema de soporte dedecisiones mediante el enfoque de utilidad de un sistema de información.www.xlibros.com
548 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADhabilidad de ser implementado. Segundo, la utilidad de actualización implica que un sistema de informacióntiene valor si se mantiene después de que sus diseñadores se van, o si un usuario que utilice por una sola vez elsistema de información obtiene resultados satisfactorios y duraderos.UTILIDAD DE OBJETIVO La utilidad de objetivo responde el “porqué” de los sistemas de información al preguntarsi la salida tiene el valor de ayudar a la organización a cumplir sus metas. El objetivo del sistema de informaciónno sólo debe estar en línea con los objetivos de los encargados de tomar decisiones, sino que también debereflejar sus prioridades.EVALUACIÓN DE SITIOS WEB CORPORATIVOSLa evaluación del sitio Web corporativo que está desarrollando o manteniendo es una parte importante de cual-quier esfuerzo de implementación exitoso. Los analistas pueden usar el enfoque de utilidad del sistema de infor-mación previamente descrito para evaluar las calidades estéticas, contenido y entrega del sitio. Como analista oadministrador Web, debe ir un paso más adelante y analizar el tráfico Web.Un visitante a su sitio Web puede generar gran cantidad de información útil para que usted la analice. Estainformación se puede recopilar automáticamente al capturar información sobre la fuente, incluyendo el último si-tio Web que el usuario visitó y las palabras clave usadas para encontrar el sitio; la información también se puedeobtener mediante el uso de cookies (archivos colocados en la computadora de un visitante acerca de cuándo vi-sitó por última vez el sitio).Uno de los principales paquetes para monitorear actividad de Web es Webtrends. La figura 16.19 es unamuestra de un reporte que lista los archivos más descargados en el sitio Web por día de la semana. El gráficomuestra los primeros cinco archivos transmitidos y la tabla inferior es una lista ordenada de todas las descargas.Un analista o administrador Web pueden obtener información valiosa al usar un servicio tal como Webtrends(aunque algunos servicios son gratuitos, por lo general los servicios de pago proporcionan el detalle necesariopara evaluar a fondo el sitio; el costo se considera un costo de operación para el mantenimiento del sitio Web).La información para ayudarle a evaluar el sitio de su cliente y hacer mejoras es abundante y fácil de obtener. Lossiete elementos esenciales se describen a continuación.1. Sepa con qué frecuencia se visita el sitio Web de su cliente Entra la información general que debe saberfiguran el número de consultas que tuvo un sitio Web en los últimos días, el número de sesiones de visitantesy el número de páginas visitadas.2. Aprenda detalles acerca de páginas específicas en el sitio Es posible obtener estadísticas de las páginasmás solicitadas, los temas más solicitados, las rutas superiores que un visitante sigue a través del sitio Webdel cliente o incluso los archivos más transmitidos. Si el sitio Web es comercial, los informes del carrito decompras pueden mostrar cuántos visitantes se convirtieron en compradores y cuántos abandonaron suscarritos o no completaron el proceso de pago.O P O R T U N I D A D D E C O N S U L T O R Í A 1 6 . 6Limpiando el nuevo sistemaNo sé lo que pasó. Cuando se instaló el nuevo sistema, losanalistas salieron limpiamente, hasta donde puedo recordar”, diceMarc Schnieder, en tono filosófico. Como vimos, él es dueño de MarcSchnieder Janitorial Supply Company (usted vio a Marc por últimavez en la Oportunidad de consultoría 13.1, cuando le ayudó a so-lucionar sus necesidades de almacenamiento de datos. En eselapso, en la empresa de Marc instalaron un nuevo sistema de infor-mación).“El equipo de análisis de sistemas nos hizo algunas preguntassobre qué nos había parecido el nuevo sistema”, Marc agrega conimpaciencia. “Nunca supimos cómo decirles que la salida no era tanlimpia como hubiéramos querido. Es decir, era confusa. Por ejem-plo, no le llegaba a la gente adecuada en el momento oportuno. Enrealidad nunca pudimos discutir de los pequeños detalles del sis-tema terminado con ese equipo de consultores. Siento como si hu-biéramos tenido que contratar a su grupo simplemente para quelimpiaran lo que ellos ensuciaron”.Después de posteriores conversaciones con Stan Lessink y JillOh, los programadores en jefe de la compañía, usted llega a la con-clusión de que el equipo que hizo la instalación inicial no tenía nin-gún mecanismo de evaluación. Sugiera un marco de trabajo adecuadopara evaluar las inquietudes que le surgieron al señor Schnieder so-bre el sistema. ¿Qué problemas pueden ocurrir cuando un sistema nose evalúa de manera sistemática? Responda en un párrafo.www.xlibros.com
CAPÍTULO 16 • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD 5493. Averigüe más sobre los visitantes del sitio Web La demografía e información del visitante —tal como elnúmero de visitas por un visitante particular en un periodo, si el visitante es nuevo o es uno que estáregresando, y quiénes son los visitantes más frecuentes— es información valiosa al evaluar un sitio Web. Lapantalla en la figura 16.20 muestra el número de los visitantes únicos (gráfico superior), el número devisitantes que realizan su primera visita (gráfico medio) y la duración media de las visitas (gráfico inferior).4. Descubra si los visitantes pueden completar adecuadamente los formularios que diseñó Si el porcentaje deerror es alto, rediseñe el formulario y vea lo que sucede. El análisis de las estadísticas revelará si un maldiseño de formulario puede ser culpable por los errores en las respuestas.5. Averigüe quién envía a los visitantes del sitio Web al sitio del cliente Averigüe cuáles sitios sonresponsables de enviar a los visitantes al sitio Web del cliente. Consiga estadísticas de los sitios que le hanenviado más tráfico, los motores de búsqueda más efectivos e incluso las palabras clave que los visitantesusaron para localizar el sitio Web de su cliente. Después de promover un sitio, puede usar el análisis detráfico Web para rastrear si la promoción del sitio realmente representó una diferencia.FIGURA 16.19Ejemplo de un informe deWebtrends Corporation quemuestra los archivos que más sedescargaron en el sitio Webcorporativo.FIGURA 16.20Informe que compara lasestadísticas de los visitantesgeneradas por Commerce Trends(de Webtrends Corporation).www.xlibros.com
550 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD6. Determine qué navegadores están usando los visitantes Sabiendo qué navegadores se están usando, puedeagregar características de un navegador específico que mejoren la apariencia y el funcionamiento del sitio, yanimen a los visitantes a quedarse más tiempo, con lo cual mejora la lealtad del sitio. Esto ayuda a saber silos visitantes están usando navegadores actuales o anticuados.7. Averigüe si los visitantes del sitio Web del cliente están interesados en la publicidad Por último, averigüe silos visitantes del sitio están interesados en las campañas publicitarias que tiene en su sitio, tal como ofrecerun descuento especial a productos por un periodo específico.Los servicios de monitoreo de actividad Web pueden ser útiles al evaluar si el sitio está cumpliendo consus objetivos en lo que se refiere al tráfico, a la efectividad de la publicidad, la productividad del empleado y elretorno sobre la inversión. Ésta es una de las maneras en que un analista puede evaluar si la presencia Web cor-porativa está cumpliendo con las metas fijadas por la gerencia y si se cumple con precisión con la visión de laorganización.RESUMENEl analista de sistemas puede asegurar la administración de lacalidad total (TQM) para analizar y diseñar sistemas de infor-mación de muchas formas. Seis Sigma es una cultura, filosofía,metodología y un enfoque para la calidad que tiene como metala eliminación de todos los defectos. Una herramienta paradiseñar un sistema con un enfoque descendente y modular sedenomina diagrama de estructura. La arquitectura orientadaa servicios es una metodología que utiliza servicios indepen-dientes para realizar varias funciones. Dos de las técnicas es-tructuradas que pueden ayudar al analista de sistemas son losmanuales de procedimientos y FOLKLORE. Los analistas desistemas deben elegir una técnica que se adapte bien a lo que seutilizaba anteriormente en la organización; además debe permi-tir flexibilidad y una fácil modificación.La prueba de programas específicos, subsistemas y siste-mas totales es esencial para la calidad. El mantenimiento delsistema es una consideración importante. Los auditores inter-nos y externos se usan para determinar la fiabilidad de la in-formación del sistema. Ellos comunican sus resultados de laauditoría a otros para mejorar la utilidad de la información delsistema.La implementación es el proceso de asegurar que los siste-mas de información y las redes sean funcionales y después in-volucrar a los usuarios bien capacitados en su operación. En losproyectos grandes de sistemas, el papel principal del analista esvigilar la implementación, estimando correctamente el tiemponecesario, y después supervisar la instalación del equipo paralos sistemas de información.Los sistemas distribuidos aprovechan la tecnología de lastelecomunicaciones y de administración de bases de datos parainterconectar a las personas que manipulan algunos de los mis-mos datos de formas significativas pero diferentes. Conforme seevalúan el hardware y software, el analista de sistemas tambiénnecesita considerar los costos y beneficios de emplear un sis-tema distribuido para satisfacer los requerimientos del usuario.Una de las formas más populares de acercarse a los sistemasdistribuidos es mediante el uso de un modelo cliente-servidor.La computación en nube permite dar servicio al comercio, lasaplicaciones y el almacenamiento de datos mediante Internet.Los tipos estándar de redes organizacionales incluyen la red deárea local (LAN) y la red de área amplia (WAN). Mediante lametodología descendente (top-down) los analistas pueden usarcinco símbolos para ayudar a dibujar diagramas de descompo-sición de red y de conectividad de concentradores.La capacitación de usuarios y personal para interactuar conel sistema de información es parte importante de la implemen-tación, debido a que los usuarios generalmente deben poderejecutar el sistema sin la intervención del analista. La conver-sión es el proceso de cambiar del sistema de información viejoal nuevo. Las cinco estrategias de conversión son conversióndirecta, conversión paralela, conversión por fases o gradual,conversión modular y conversión distribuida. La investigaciónsugiere que los analistas pueden mejorar la probabilidad de quese acepten los sistemas recién implementados si desarrollansistemas teniendo en cuenta metáforas organizacionales predo-minantes.La seguridad de datos y sistemas ha cobrado mayor im-portancia para los analistas que diseñan más aplicaciones decomercio electrónico. La seguridad tiene varias facetas —fí-sica, lógica y conductual— que deben trabajar en conjunto. Losanalistas pueden tomar varias precauciones, tal como softwareantivirus, filtrado de correo electrónico, filtros URL, firewalls,gateways, redes privadas virtuales, productos de detección deintrusión, nivel de sockets seguros, transacción electrónicasegura y el uso de una infraestructura de clave pública paramejorar la privacidad, confidencialidad y seguridad de siste-mas, redes, datos, individuos y organizaciones. Además, todaempresa para la cual usted diseñe una aplicación de comercioelectrónico debe adoptar una política de privacidad con base encinco lineamientos.Incluso cuando se tomen todas las medidas posibles paraasegurar la seguridad, privacidad y estabilidad del sistema,todos los empleados y sistemas son vulnerables a los desas-tres naturales o provocados por los humanos. La recuperaciónde los desastres se concentra en la forma en que una empresapuede continuar después de sufrir un desastre y cómo puederestaurar la infraestructura esencial de TI.Hay muchos enfoques de evaluación disponibles, inclu-yendo el análisis costo-beneficio, el enfoque de evaluación dedecisión revisada y las evaluaciones de la participación del usua-rio. El marco de referencia de la utilidad del sistema de infor-mación es una forma directa de evaluar un nuevo sistema conbase en las seis utilidades de posesión, forma, lugar, tiempo,actualización y objetivo.www.xlibros.com
CAPÍTULO 16 • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD 551E X P E R I E N C I A D E H Y P E R C A S E ® 1 6 . 2Como sabe, Snowden está decidido a implementar algún tipode rastreo automatizado para la gente de Capacitación. No obstante,a pesar de que usted y su equipo han estado aquí en MRE todo estetiempo, a mí no me queda claro cómo se logrará eso. Tal vez ustedse haya percatado que algunas personas como Tom Ketcham seaferran a sus formas de pensar, pero Snowden también es así, y éltiene la sartén por el mango. Lo que le estoy diciendo no es nuevopara usted, ¿verdad?”.“Además le pido que verifique con Jack O’Malley y Kate Eckertpara asegurarse de que lo que planea esté cubierto por su plan derecuperación de desastres más reciente. Creo que para cuandoSnowden regrese de Polonia, usted debe estar preparado para mos-trarle cómo podemos implementar un sistema de rastreo automati-zado para el grupo de Capacitación, pero tiene que ser un sistemaconvincente para los nuevos usuarios. Después de todo, ellos sonlos que tienen que utilizarlo. Le reservaré una reunión con Snowdenpara dentro de dos semanas.”Preguntas de HYPERCASE1. Desarrolle un plan de implementación que pudiera servir algrupo de Capacitación para cambiar a un sistemacomputarizado de rastreo de proyectos. Explique su enfoqueen un párrafo. Asegúrese de que su plan también cumpla lasexpectativas de Snowden.2. En dos párrafos, explique qué enfoque de conversión esapropiado para adoptar un nuevo sistema automatizado deseguimiento de proyectos para el grupo de Capacitación.3. Cree una lista con viñetas de las medidas que tomaría paraasegurar y respaldar el nuevo sistema de rastreo de proyectosque va a proponer para el grupo de Capacitación.PALABRAS CLAVE Y FRASESacoplamiento de datosadministración de la calidad total (TQM)análisis del tráfico Webauditor internobandera de control (interruptor)círculo de calidad de SIconectividad de concentradorconversión directaconversión distribuidaconversión gradual o en fasesconversión modularconversión paraleladescomposición de reddiagrama de estructuradiseño ascendentediseño descendentediseño y desarrollo modulardocumentación de softwarefirewall o sistema de firewallFOLKLOREinfraestructura de clave pública (PKI)mantenimiento de softwaremetáforas organizacionalesmodelado de redesmodelo cliente-servidorpolítica de privacidad corporativapreparación para desastresprocesamiento distribuidoproductos de filtrado de correo electrónicoproductos de filtrado de URLprueba de sistemas completa con datos de pruebaprueba de sistemas completa con datos realesprueba de vínculos con datos de prueba (prueba de cadena)prueba del programa con datos de pruebarecorrido estructuradorecuperación de desastresred de área amplia (WAN)red de área local (LAN)red de área local inalámbrica (WLAN)redes de área de almacenamiento (SAN)seguridad conductualseguridad lógicaSeis Sigmasoftware antivirussoftware de cifradoutilidad del sistema de informaciónverificación de escritorioPREGUNTAS DE REPASO1. ¿Cuáles son las tres metodologías amplias disponibles para que el analista de sistemas obtenga calidad en los sistemasrecién desarrollados?2. ¿Qué o quién es el factor más importante para establecer y evaluar la calidad de los sistemas de información o sistemasde soporte de decisiones? ¿Por qué?3. Defina la metodología de administración de la calidad total (TQM) según su aplicación al análisis y diseño de sistemasde información.www.xlibros.com
552 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD4. ¿Qué significa el término Seis Sigma?5. ¿Qué es un círculo de calidad de SI?6. Defina lo que significa realizar un recorrido estructurado. ¿Qué debe estar involucrado? ¿Cuándo se deben realizar losrecorridos estructurados?7. Mencione las ventajas de tomar una metodología descendente para el diseño.8. Defina el desarrollo modular.9. Mencione cuatro lineamientos para la programación modular correcta.10. Nombre los dos tipos de flechas utilizadas en los diagramas de estructura.11. ¿Qué es la arquitectura orientada a servicios?12. Mencione dos razones que apoyen la necesidad de sistemas documentación de software bien desarrollados.13. ¿En qué cuatro categorías recolecta información el método de documentación FOLKLORE?14. Mencione seis lineamientos para elegir una técnica de diseño y documentación.15. ¿Quién tiene como principal responsabilidad probar los programas de computadora?16. ¿Cuál es la diferencia entre los datos de prueba y los datos reales?17. ¿Cuáles son los dos tipos de auditores de sistemas?18. Mencione las cuatro metodologías para la implementación.19. Describa lo que significa un sistema distribuido.20. ¿Cuál es el modelo cliente-servidor?21. Describa cuál es la diferencia entre un cliente y un usuario.22. ¿Cuáles son las ventajas de utilizar una metodología cliente/servidor?23. ¿Cuáles son las desventajas de usar una metodología cliente/servidor?24. ¿Quién se debe capacitar para usar el sistema de información nuevo o modificado?25. Mencione las cinco posibles fuentes de capacitación para los usuarios de sistemas de información.26. Mencione las cinco estrategias de conversión para convertir sistemas de información antiguos en nuevos.27. Mencione las nueve metáforas organizacionales y el éxito hipotético de cada tipo de sistema dada su presencia.28. Defina los términos seguridad física, lógica y conductual y dé un ejemplo de cada uno que ilustre las diferencias entreellos.29. Defina lo que significa software de cifrado.30. ¿Qué es un firewall o sistema de firewall?31. Mencione cinco de las medidas que un analista puede tomar para mejorar la seguridad, privacidad y confidencialidad dedatos, sistemas, redes, individuos y organizaciones que usan aplicaciones Web de comercio electrónico.32. Mencione cinco lineamientos para diseñar una política de privacidad corporativa para las aplicaciones de comercioelectrónico.33. Mencione brevemente las diferencias entre preparación para desastres y recuperación de desastres.34. Mencione y describa las utilidades de los sistemas de información que se pueden utilizar para evaluar el sistema deinformación.35. ¿Cuáles son los siete elementos esenciales que el analista debe incluir al realizar el análisis de tráfico de un sitio Web?PROBLEMAS1. Uno de los miembros de su equipo de análisis de sistemas ha estado desalentando los comentarios de los usuariossobre los estándares de calidad, argumentando que debido a que ustedes son los expertos, realmente son los únicosque saben lo que constituye un sistema de calidad. En un párrafo, explique al miembro de su equipo por qué esimportante obtener las opiniones de los usuarios para la calidad del sistema. Use un ejemplo.2. Escriba una tabla de contenido detallada para un manual de procedimientos que explique a los usuarios cómo conectarsea la red de cómputo de su escuela, así como también las políticas de la red (quién es un usuario autorizado, etc.).Asegúrese de que el manual se escriba pensando en el usuario.3. Su equipo de análisis de sistemas está cerca de completar un sistema para Meecham Feeds. Roger está bastante segurode que los programas que ha escrito para el sistema de inventario de Meecham funcionarán como se requiere, debido aque son similares a los programas que ha hecho antes. Su equipo ha estado muy ocupado y le gustaría empezar a realizarla prueba completa de sistemas tan pronto como sea posible. Dos miembros jóvenes de su equipo han propuesto losiguiente:a. Omitir la verificación de escritorio de los programas (debido a que programas similares se verificaron en otrasinstalaciones; Roger está de acuerdo).b. Hacer la prueba de vínculos con grandes cantidades de datos para comprobar que el sistema funcionará.c. Hacer la prueba completa de sistemas con grandes cantidades de datos reales para demostrar que el sistema estáfuncionando.Responda a cada uno de los tres pasos del programa de prueba propuesto. Explique su respuesta en un párrafo.4. Proponga un plan de pruebas modificado para Meecham Feeds (problema 3). Divida su plan en una secuencia de pasosdetallados.5. Dibuje una red de área local, o alguna otra configuración de procesamiento distribuido que use el enfoque cliente/servidor, para resolver algunos de los problemas con la compartición de datos que está teniendo la compañía dewww.xlibros.com
CAPÍTULO 16 • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD 553construcción Bakerloo Brothers. La empresa quiere que equipos de arquitectos trabajen en diseños en la oficinaprincipal, permitir al supervisor de la construcción introducir los cambios de último momento a los planos de obras enproceso y permitir a clientes ver los diseños casi en cualquier parte. Actualmente, la compañía tiene una LAN para losarquitectos que están en una ciudad (Filadelfia) que les permite compartir algunas herramientas de dibujo y cualquieractualización que los miembros del equipo hacen con los arquitectos en otras ciudades (Nueva York, Terre Haute,Milwaukee, Lincoln y Vancouver). El supervisor usa una computadora portátil, no puede hacer ningún cambio y no seconecta a una base de datos. Los clientes ven los diseños en las pantallas, pero los representantes de ventas no puedenintroducir las modificaciones para mostrarles lo que pasaría si una pared se moviera o si se alterara una línea del tejado(Sugerencia: Mencione los problemas que la compañía está encontrando, analice los síntomas, piense en una solución ydespués empiece a dibujar.). Se podría necesitar más de una red y no todos los problemas se prestan a una solución desistemas.6. Cree un plan de recuperación de desastres para una de las redes que recomendó a Bakerloo Brothers en el problema 5.7. Cramtrack, el sistema de tren regional, está intentando capacitar a los usuarios de su sistema de cómputo reciéninstalado. Para que los usuarios obtengan la capacitación adecuada, los analistas de sistemas involucrados con elproyecto enviaron un memorándum a los jefes de los cuatro departamentos que incluye a usuarios principales ysecundarios. El memorándum decía en parte, “Sólo las personas que sienten que requieren capacitación necesitan hacerlas reservaciones para la capacitación externa; todos los demás deben aprender el sistema conforme trabajen con él”.Sólo se inscribieron 3 usuarios de 42 posibles. Los analistas están satisfechos de que el memorándum separóeficazmente a las personas que necesitan la capacitación de aquellos que no la necesitan.a. En un párrafo, explique qué puede estar mal en el enfoque que los analistas siguieron para capacitar.b. Delinee los pasos que seguiría para asegurar que las personas correctas de Cramtrack están capacitadas.c. En un párrafo sugiera cómo se debería usar la Web para ayudar en la capacitación para Cramtrack.8. Al escritorio de Bill Cornwell llegó un atractivo y colorido folleto donde se describe el programa de capacitación externay las instalaciones de la Benny Company en términos muy favorables, mostrando usuarios felices frente a sus PC einstructores profesionales atendiéndoles con aspecto interesado. Bill se dirigió agitadamente hacia la oficina de Roseanny le dijo: “Tenemos que contratarlos. ¡Este lugar se ve excelente!”. Roseann no se convenció por el folleto, pero no supoqué decir en defensa de la capacitación interna para usuarios que ella ya había autorizado.a. En unas frases, ayude a Roseann a argumentar la utilidad de la capacitación interna con instructores internos encomparación con la capacitación externa con instructores contratados externamente.b. Si Bill se decide por la capacitación de la Benny Company, ¿qué debe hacer para verificar que esta compañía sea dehecho el lugar correcto para capacitar a los usuarios del sistema de información de la compañía? Haga una lista deacciones que deba seguir.9. “Sólo un poco más... Quiero estar seguro que está trabajando correctamente antes de que cambie de opinión”, diceBuffy, la dueña de tres boutiques de accesorios de baño de nombre Tub’n Stuff. Su contador, quien le ayudó a establecerun nuevo sistema de información de contabilidad, está intentando desesperadamente persuadir a Buffy de migrarcompletamente hacia el nuevo sistema. Buffy ha insistido en ejecutar los sistemas antiguo y nuevo en paralelo duranteun año entero.a. Describa brevemente los problemas generales involucrados al usar una estrategia de conversión paralela paraimplementar un nuevo sistema de información.b. En un párrafo, intente convencer al dueño de Tub’n Stuff de que un año para ejecutar un sistema en paralelo esmucho tiempo. Sugiera una forma de acabar los sistemas duales de Tub’n Stuff que proporcione bastante certeza aBuffy (asuma que el nuevo sistema es confiable).10. Delinee un plan para realizar el análisis de tráfico Web para la aplicación de comercio electrónico desarrollada paraMarathon Vitamin Shops (consulte las Oportunidades de consultoría 1.1, 13.2 y 14.6 para conocer más sobre laorganización, sus productos y sus objetivos). Su diseño debe tomar la forma de un informe escrito para el dueño de lacadena, Bill Berry. Asegúrese de indicar qué estadísticas supervisará y por qué es importante que Marathon VitaminShops las conozca.11. FilmMagic, una cadena de tiendas de renta de video, está experimentando con agregar un nuevo servicio basado en Weba su tienda (similar a www.netflix.com) que podría, por una cuota mensual, permitir a clientes escoger una lista deDVD, prepararlos para enviarlos a su casa y regresarlos en un sobre prepagado cuando los hayan visto. Con base en loque sabe de FilmMagic, escriba una política de privacidad corporativa que funcionaría bien en su sitio Webrecientemente propuesto. Cree una pantalla de prototipo (con un paquete de gráficos o un procesador de texto) queincluya lenguaje apropiado, fuentes e iconos para mostrar cómo aparecerá su política como una página en el sitio Webde FilmMagic.12. Ayman’s Office Supplies Company mandó instalar hace poco un nuevo sistema de información para ayudar a susgerentes con el inventario. Al con ellos, usted observa que parecían enfadados con la salida del sistema, una serie depantallas que muestran el inventario actual, direcciones del cliente y proveedor, y otros datos. Se necesita acceder a todaslas pantallas a través de varios comandos especiales y el uso de una contraseña. Los gerentes tuvieron varias opinionessobre el sistema pero no tuvieron ninguna forma sistemática de evaluarlo.a. Invente una lista de control o formulario que ayude a los gerentes de Ayman a evaluar las utilidades de un sistema deinformación.b. Sugiera una segunda forma de evaluar el sistema de información. Compárela con lo que hizo en el problema 12a.www.xlibros.com
554 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADPROYECTOS EN GRUPO1. Nicholas Ventola es director general del mundialmente famoso restaurante Le Corked. Su sistema de información sedesarrolló con el tiempo y, en la actualidad, consta de dos sistemas de cómputo que no se comunican entre sí. Unsistema se encarga de las reservaciones y mantiene una base de datos de las preferencias de los clientes (gustos yaversiones), fechas y aniversarios, y demás información. El otro sistema asigna cada grupo de comensales a una mesa enuna noche dada. En su grupo utilice una metodología descendente para identificar los módulos necesarios para realizartodo lo que Nicholas quiere hacer con sólo un sistema de cómputo, desde hacer reservaciones hasta ordenar comida. Conbase en su propia experiencia, determine qué sistemas son necesarios para operar un establecimiento de cenas de lujo ydespués describa los módulos, además de cómo y cuándo los utilizaría.2. Divida su grupo en dos subgrupos; uno debe entrevistar a los miembros del otro sobre sus experiencias al registrarse enuna clase. Se debe diseñar preguntas para obtener información sobre costumbres, relatos, proverbios y formas artísticasque ayudarán a documentar el proceso de registro de su escuela.3. Reúna a su grupo para desarrollar una página Web para un extracto de un manual de FOLKLORE que documente elproceso de registro para una clase, basado en el FOLKLORE que se utilizó en las entrevistas del proyecto en grupo 2antes mencionado. Recuerde incluir ejemplos de costumbres, relatos, proverbios y formas artísticas.BIBLIOGRAFÍA SELECCIONADAEvans, J. R. y W. M. Lindsay. An Introduction to Six Sigma and Process Improvement. Florence, KY: Cengage Learning,2004.Hecht, J. A. “Business Continuity Management”. Communications of the AIS, Vol. 8, artículo 30, 2002.Juran, J. M. Managerial Breakthrough. Nueva York: McGraw-Hill, 1964.Kendall, J. E. y K. E. Kendall, “Metaphors and Methodologies: Living Beyond the Systems Machine”, MIS Quarterly, Vol. 17,Núm. 2, junio de 1993, pp. 149-171.Kendall, K. E. “Evaluation of a Regional Blood Distribution Information System”. International Journal of Physical Distribu-tion and Materials Management, Vol. 10, Núm. 7, 1980.Kendall, K. E., J. E. Kendall y K. C. Lee. “Understanding Disaster Recovery Planning through a Theatre Metaphor: Rehearsingfor a Show That Might Never Open”. Communications of AIS, Vol. 16, 2005, pp. 1001-1012.Kendall, K. E. y R. Losee, “Information System FOLKLORE: A New Technique for System Documentation”, Information andManagement, Vol. 10, Núm. 2, 1986, pp. 103-111.Kobieulus, J. “Above the Cloud”, Network World, diciembre 15 de 2008, p. 22. www.networkworld.com. Último acceso en 26de agosto de 2009.Stephens, D. O. “Protecting Records in the Face of Chaos, Calamity and Cataclysm”, The Information Management Journal,enero/febrero de 2003, pp. 33-40.Warkentin, W., R. S. Morse, E. Bekkering y A. C. Johnston. “Analysis of Systems Development Project Risks: An IntegrativeFramework. The DATA BASE for Advances in Information Systems, Volumen 40, Número 2, mayo de 2009, pp. 8-21.Wikipedia, the free encyclopedia, “Cloud Computing”. Último acceso en 26 de agosto de 2009.Zmud, R. W. y J. F. Cox, “The Implementation Process: A Change Approach”, MIS Quarterly, Vol. 3, Núm. 2, 1979, pp.35-44.www.xlibros.com
CAPÍTULO 16 • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDAD 555E P I S O D I O 1 6CASO DE LA CPUALLEN SCHMIDT, JULIE E. KENDALL Y KENNETH E. KENDALLSemper RedundateMack Roe se dirige hacia el escritorio de Anna, donde también se encuentra Chip, y dice: “Se ha probado el último programae incorporado a la prueba del sistema. Los resultados indican que el sistema está terminado. Todos los programas y subsistemasfuncionan de la manera como se planeó. Todo el sistema se revisó en detalle. Las pruebas han sido extensas y precisas, y todoslos problemas y errores se han resuelto de manera satisfactoria. He revisado todo lo que se debía entregar, y todo se desarrollóen los programas. Los dejo que lo instalen y que después celebren”.“¡Esto es grandioso!”, exclama Anna cuando Mack se aleja. “Hemos estado esperando mucho este momento. Ahora tene-mos la tarea de instalar el sistema. Ya revisé con Mike Crowe: ya llegó todo el hardware y está instalado. Las computadoras seconectaron en una configuración de estrella, y ya se instaló el software de red. ¿Por qué no hacemos una lista de las tareas quedebemos realizar?”.“De acuerdo”, responde Chip. “Tenemos que capacitar a los usuarios en el manejo del sistema. Sería bueno ofrecer primerouna capacitación general, y luego la capacitación específica para cada usuario. Tal vez sea necesario que capacitemos a variaspersonas —al usuario y a alguien que lo sustituya— para cada operación específica.”“Me parece bien”, contesta Anna, “pero no creo que sea conveniente un sustituto para Paige Prynter. No creo que a ella leagrade la idea”.“Hablando de sustitución”, agrega Chip, “¿qué hay de la creación de respaldos de las tablas maestras de la base de datosy otras tablas? Deberíamos diseñar algún procedimiento automatizado para crear estas copias”.“Sí”, responde Anna. “Excelente idea. También debemos ocuparnos de la seguridad del sistema: quién puede acceder a losdatos, y quién puede actualizar los diversos elementos de la base de datos. También deberíamos crear un plan de recuperación dedesastres, sólo en caso de que ocurran cosas como cortes de energía u otros desastres naturales o provocados por los humanos”.“De acuerdo”, subraya Chip. “Uno nunca sabe cuando las cosas pueden salir mal. Otro pendiente es convertir al nuevoformato los archivos de producción del sistema anterior. No necesitamos volver a teclear todos los registros de los archivosmaestros de hardware y software.”“¿Por qué no encargamos a uno de los programadores que escriba un programa único que convierta al nuevo formato cadauno de los archivos del formato viejo?”, sugiere Anna. “Los índices se podrían actualizar automáticamente, y los campos adi-cionales se podrían inicializar con espacios o ceros”.Los programadores terminan en poco tiempo los programas de conversión de archivos. Las nuevas tablas de la base dedatos se crean y su exactitud se verifica con gran detalle. Este esfuerzo se ve recompensado con nuevas tablas que contienentodas las filas necesarias con información correcta.La capacitación se programa para comenzar en el Centro de Información. Hy Perteks tiene mucha disposición para dedicartiempo a la instalación del software y a impartir las sesiones de capacitación. Chip y Anna se alternan para dar capacitación enlas respectivas áreas del sistema que crearon.Al finalizar las sesiones de capacitación, la última tarea consiste en la conversión del sistema viejo al nuevo. Se elige elmétodo de fases como el mejor enfoque. Primero se instalan los programas en el hardware. Los registros se actualizan con in-formación para los elementos adicionales que se incluyeron en el diseño del sistema.A continuación, se instalan los programas de actualización del software. Una vez más, se introducen actualizaciones a lastablas de las bases de datos. Cuando los registros contienen toda la información necesaria, se instalan las pantallas de consulta.Por último, se agregan al sistema los programas de informes y menús.“La instalación es un éxito redondo”, se regocija Chip. “Todo funciona correctamente, sin un error en el sistema. Creo quedeberíamos tocar madera. ¿Te han comentado algo los usuarios?”.“Sí”, responde Anna. “Están felices y aliviados por contar con su nuevo sistema. Mike Crowe ya empezó a utilizar la ca-racterística de mantenimiento preventivo, y puso a sus estudiantes a que le ayudaran a realizarlo en un salón de laboratorio a lavez. Cher y Dot han ejecutado las diversas pantallas y varias veces han elogiado lo fácil que es realizar sus tareas. Visité a PaigePrynter, y me pidió que le sugiriera qué hacer con todo el tiempo libre que le queda.”“Entiendo que el sistema Web está disponible a través del portal de maestros. Se enviaron avisos por correo electrónicosobre la disponibilidad del sistema Web y las sesiones de capacitación”.Los analistas sonríen. Chip dice: “En realidad ha sido bueno trabajar en este proyecto”.“Así es”, responde Anna. “El mejor sistema que hemos creado aquí en la CPU.”“También he aprendido mucho de la universidad en mi breve estancia aquí. Es un buen lugar para trabajar”, dice Chip confilosofía.“Y si recuerdas nuestro lema, debes hacerlo bien”, responde Anna. “Semper redundate”, le dice a Chip.“Sí, lo veo en todos los membretes. Sin embargo, admito que nunca tomé latín en la escuela. ¿Qué significa este lema?”,pregunta Chip.“¡Respalda siempre!”, dice Anna con seguridad.www.xlibros.com
556 PARTE V • ASEGURAMIENTO E IMPLEMENTACIÓN DE LA CALIDADEJERCICIOSE-1. Describa los procedimientos que deben diseñarse para crear archivos de respaldo de manera automática. Explique en unpárrafo los pros y contras de estos procedimientos.E-2. Mencione las medidas de seguridad que deben tomarse para impedir que personas no autorizadas utilicen el sistema decómputo.E-3. Describa un plan de recuperación de desastres para el nuevo sistema de cómputo que acaba de crear para la CPU. Hagaun énfasis especial en los equipos que serán responsables de manejar una crisis.E-4. Explique en un párrafo por qué se utilizaría una conversión en fases para instalar el sistema de cómputo.www.xlibros.com
557Los números entre paréntesis hacen referencia al capítulo enel que se define el término.ACOPLAMIENTO DE DATOS Representación de laforma de pasar los datos entre dos módulos en un diagrama(o gráfico) de estructura. (16)ACTOR En UML, el rol específico de un usuario delsistema. El actor existe fuera del sistema e interactúa con elmismo de una manera específica. Un actor puede ser unhumano, otro sistema o un dispositivo tal como un teclado.(10) Vea también caso de uso.ADMINISTRACIÓN DE LA CADENA DESUMINISTRO El esfuerzo de una organización por integrara sus proveedores, distribuidores y los requerimientosadministrativos de los clientes en un solo proceso unificado.Las aplicaciones de comercio electrónico pueden mejorar laadministración de la cadena de suministro. (16)ADMINISTRACIÓN DE PROYECTOS El arte y laciencia de planificar un proyecto, estimar costos ycalendarios, administrar el riesgo, organizar y supervisar unequipo. Existen muchos paquetes de software para apoyar lastareas de administración de proyectos. (3)ADMINISTRADOR DE PROYECTOS La personaresponsable de supervisar la planificación, costos,calendarios y organización del equipo de un proyecto(a menudo de sistemas). Con frecuencia este papel lodesempeña un analista de sistemas. (3)AGREGACIÓN A menudo se describe como relación“tiene un” al usar UML para una metodología orientada aobjetos. Las agregaciones proveen la manera de mostrar queun objeto está compuesto en su totalidad por la suma de suspartes (otros objetos). (10)AJAX Un método que utiliza JavaScript y XML paramodificar páginas Web en forma dinámica sin tener quemostrar una nueva página, para lo cual obtiene pequeñascantidades de datos del servidor. (12)AJUSTE Describe la forma en que trabajan en conjuntolos elementos HCI del humano, la computadora y la tarea arealizar para mejorar el rendimiento y bienestar. (14)ALIAS Nombre alternativo para un elemento de datos usadopor distintos usuarios. Se registra en un diccionario de datos. (8)ALMACÉN DE DATOS Datos que se almacenan en elsistema; se representa mediante un rectángulo con unextremo abierto en los diagramas de flujo de datos. (7).ALMACÉN DE DATOS CORPORATIVO Una colecciónde datos de apoyo de los procesos de decisión administrativosque está orientada al tema, integrada, varía con el tiempo y esno volátil. (14) Vea también minería de datos.ANÁLISIS DE PUNTOS DE FUNCIÓN Una manera deestimar el tamaño de un proyecto, tomando en cuenta loscinco componentes principales de los sistemascomputacionales: entradas externas, salidas externas,consultas de registros externas, archivos lógicos internos yarchivos de interfaz externa. (3)ANALISTA DE SISTEMAS La persona que evalúa demanera sistemática la forma en que funcionan los negocios,mediante un examen de la introducción y el procesamientode los datos y la información de salida con la intención demejorar los procesos organizacionales y la calidad de la vidaútil para los usuarios. (1)ÁRBOL DE DECISIONES Un método de análisis para lasdecisiones estructuradas; es una metodología apropiada cuandoes necesario realizar las acciones en cierta secuencia. (9)ARQUITECTURA CLIENTE/SERVIDOR Un modelode diseño en el que las aplicaciones se ejecutan en una red deárea local (LAN). Las computadoras en la red dividen lastareas de procesamiento entre servidores y clientes. Losclientes son máquinas en red que actúan como puntos deentrada en el sistema cliente/servidor. (16)ARQUITECTURA ORIENTADA A SERVICIOS(SOA) Crear servicios de software individuales que no esténasociados o que tengan un acoplamiento débil con algún otroelemento como aplicaciones o partes de aplicaciones para losusuarios, usando a menudo la Web como plataforma. (16)ATRIBUTO Cierta característica de una entidad. Puedehaber muchos atributos para cada entidad. (13) Vea tambiénelemento de datos.BANDERA DE CONTROL Se utiliza en los diagramas(o gráficos) de estructura para gobernar la porción a ejecutarde un módulo; se asocia con instrucciones IF, THEN, ELSEy demás tipos similares de instrucciones. (16)GLOSARIOwww.xlibros.com
558 GLOSARIOBASE DE DATOS Un almacén de datos electrónicodefinido de manera formal y controlado en forma central,para usarse en muchas aplicaciones. (13)BENEFICIOS INTANGIBLES Beneficios que seacumulan en la organización como resultado de un nuevosistema de información y que son difíciles de medir, comomejorar la toma de decisiones, mejorar la precisión yvolverse más competitivo. (3) Vea también costosintangibles, beneficios tangibles, costos tangibles.BENEFICIOS TANGIBLES Ventajas que se puedenmedir en dinero y se acumulan en la organización a travésdel uso de los sistemas de información. (3) Vea tambiénbeneficios intangibles, costos intangibles, costos tangibles.BOTÓN DE OPCIÓN Uno de varios elementos dediseño de GUI que provee un botón de opción redondo enun cuadro de diálogo. Los botones son mutuamenteexcluyentes, debido a que un usuario puede escoger sólo unbotón de opción dentro del grupo de opciones que sevisualicen. (11)CAMPO Una parte física de una base de datos que sepuede empaquetar con varios elementos de datos; la unidadmás pequeña identificable de datos de la aplicación,reconocida por el software del sistema. (13)CARRILES (SWIMLANES) Zonas que se utilizan en losdiagramas de actividad para indicar el particionamiento;pueden mostrar qué actividades se realizan en cadaplataforma y qué grupo de usuarios las realiza; tambiénpueden representar la lógica del sistema. (10)CASO DE USO En UML, una secuencia de transaccionesen un sistema; el propósito es producir algo de valor para unactor en el sistema; se concentra en lo que hace el sistema,en vez de en cómo lo hace. El modelo de caso de uso se basa enlas interacciones y relaciones de casos de uso individuales.En un caso de uso, un actor que utiliza el sistema inicia unevento que a su vez empieza una serie relacionada deinteracciones en el sistema. (10)CICLO DE VIDA DEL DESARROLLO DE SISTEMAS(SDLC) Una metodología de siete fases para el análisis ydiseño de sistemas, la cual sostiene que los sistemas sedesarrollan mejor mediante el uso de un ciclo específico deactividades de analistas y usuarios. (1)CIFRADO El proceso de hacer ilegible un mensajemediante el uso de una clave, de manera que pueda leerlosólo el destinatario designado. De esta forma, la personadesignada como receptor del mensaje puede utilizar la clavepara descifrarlo y leerlo. (13)CLASE Una plantilla común para un grupo de objetosindividuales con atributos y comportamientos comunes en elanálisis y diseño orientados a objetos, y en el UML. (10)CLASE DE OBJETO Una categoría de objetos similares.Los objetos se agrupan en clases. Una clase define elconjunto de atributos y comportamientos compartidos que seencuentran en cada objeto de la clase. (10)CLAVE (O LLAVE) Uno de los elementos de datos en unregistro que se utiliza para identificar al registro. (13) Veatambién clave primaria, clave secundaria.CLAVE (O LLAVE) CONCATENADA Una clavecompuesta que se crea cuando no es posible identificar unregistro con sólo utilizar uno de los elementos de datos quese encuentran en él; para elegir una clave se elijen dos omás elementos de datos y se combinan entre sí. (13)CLAVE (O LLAVE) PRIMARIA Una clave queidentifica a un registro en forma única. (13) Vea tambiénclave, clave secundaria.CLAVE (O LLAVE) SECUNDARIA Una clave que nopuede identificar a un registro en forma única; se puedeutilizar para seleccionar un grupo de registros quepertenezcan a un conjunto. (13)CÓDIGO NEMÓNICO Cualquier código (a menudoutilizando una combinación de letras y símbolos) que ayudaal capturista de datos a recordar cómo introducirloscorrectamente, o que ayuda al usuario a recordar cómo usarla información. (15)COMERCIO ELECTRÓNICO Hacer negocios por víaelectrónica, incluyendo el correo electrónico, las tecnologíasWeb, BBS, tarjetas inteligentes, EFT y EDI, entreproveedores, clientes, agencias gubernamentales y otrasempresas para realizar y ejecutar transacciones enactividades comerciales, administrativas y de losconsumidores. (1)COMPLEMENTO (PLUG-IN) Software adicional(a menudo desarrollado por un tercero) que se puede utilizarcon otro programa; por ejemplo, los complementos RealPlayer de RealNetworks o Flash de Macromedia se utilizanen los navegadores Web para reproducir audio o video deflujo continuo y ver animaciones basadas en vectores. (11)COMPORTAMIENTO La forma en que un objeto actúay reacciona. (10)CÓMPUTO EN LA NUBE Esquema dentro del cual lasorganizaciones y los usuarios individuales utilizan serviciosWeb, de bases de datos y de aplicaciones a través deInternet (la nube), sin tener que invertir en hardwareo software corporativo o personal, o en herramientas desoftware adicionales a las que la Web proporciona. Lasempresas utilizan navegadores Web para acceder a lasaplicaciones y los servidores almacenan software y datospara las empresas. (16)CONSULTAS Preguntas que los usuarios hacen a la basede datos en relación con la información que contiene. Cadaconsulta involucra a una entidad, un atributo y un valor. (14)CONVERSIÓN Convertir físicamente la información delsistema antiguo al nuevo sistema. Hay cinco estrategias deconversión: cambio directo, conversión en paralelo, conversiónen fases o gradual, conversión de prototipo modular yconversión distribuida.COSAS En UML, las cosas describen a los objetos delanálisis y diseño orientados a objetos. Los dos agrupamientosde cosas que se utilizan con más frecuencia son las cosasestructurales y las cosas de comportamiento. (10)COSTOS INTANGIBLES Costos que son difíciles deestimar y que tal vez se desconozcan, incluyendo el perder laventaja competitiva o la reputación de innovador, y deteriorarwww.xlibros.com
GLOSARIO 559la imagen de la empresa debido a información inoportuna oinaccesible. (3) Vea también beneficios intangibles,beneficios tangibles, costos tangibles.COSTOS TANGIBLES Los costos en dinero que el analistade sistemas puede pronosticar con precisión, incluyendo elcosto de las computadoras, los recursos, el tiempo de losanalistas y programadores, y los salarios de los demásempleados, para desarrollar un nuevo sistema. (3) Vea tambiénbeneficios intangibles, costos intangibles, beneficios tangibles.CREACIÓN DE PROTOTIPOS Un proceso rápido einteractivo entre los usuarios y analistas para crear y refinarporciones de un nuevo sistema; se puede utilizar como partedel ciclo de vida del desarrollo de sistemas (SDLC) paradeterminar los requerimientos, o como una alternativa para elSDLC. (6) Vea también desarrollo rápido de aplicaciones.DEFINICIÓN DEL PROBLEMA Una declaración formaldel problema, incluyendo: 1) aspectos de la situación actual,2) los objetivos para cada cuestión, 3) los requerimientos quese deben incluir en todos los sistemas propuestos y 4) lasrestricciones que limitan el desarrollo del sistema. (3)DESARROLLO RÁPIDO DE APLICACIONES(RAD) Una metodología orientada a objetos para eldesarrollo de sistemas, la cual incluye un método dedesarrollo junto con herramientas de software. (6) Veatambién creación de prototipos.DESNORMALIZACIÓN(O DENORMALIZACIÓN) Definir registros físicos que noestén en la tercera forma normal o en una superior; incluye launión de atributos de varias relaciones entre sí para evitar elcosto de acceder a varios archivos. El particionamiento esuna forma intencional de desnormalización. (13)DIAGRAMA DE BURBUJA Un diagrama simple quemuestra las asociaciones de datos de los elementos de datos.Cada entidad se encierra en una elipse y se utilizan flechaspara mostrar las relaciones. También se le conoce comodiagrama de modelo de datos. (13)DIAGRAMA DE CLASES Se usa para modelar en formagráfica la vista de diseño estructural estática de un sistema;ilustra los requerimientos funcionales del sistema recopiladosmediante el análisis, así como el diseño físico del sistema. (10)DIAGRAMA DE ESTADOS En UML, una forma derefinar aún más los requerimientos. (10)DIAGRAMA DE ESTRUCTURA Una herramienta paradiseñar un sistema modular arriba-abajo, la cual consiste encuadros rectangulares y flechas de conexión. (16) Veatambién bandera de control, acoplamiento de datos.DIAGRAMA DE FLUJO DE DATOS(DFD) Representación gráfica de los procesos de datos,flujos de datos y almacenes de datos en un sistemacomercial. (7)DIAGRAMA DE FLUJO DE DATOS A NIVEL DECONTEXTO El diagrama de flujo de datos más básico deuna organización; muestra la forma en que los procesostransforman los datos entrantes en información saliente.También se le conoce como modelo ambiental. (2) Veatambién diagrama de flujo de datos.DIAGRAMA DE FLUJO DE DATOS FÍSICO Un DFDque muestra la forma en que se implementará un sistema,incluyendo el hardware, software, las personas y losarchivos involucrados. (7) Vea también diagrama de flujode datos lógico.DIAGRAMA DE FLUJO DE DATOS LÓGICO Undiagrama que se enfoca en el negocio y la manera en que ésteopera; describe los eventos de negocios que se llevan a caboy los datos que cada evento requiere y produce. (7) Veatambién diagrama de flujo de datos, diagrama de flujo dedatos físico.DIAGRAMA DE NIVEL 0 La expansión(o descomposición) del diagrama de flujo de datos a nivel decontexto, que muestra de tres a nueve procesos importantes,flujos de datos importantes y almacenes de datos del sistemaque se está estudiando. (7)DIAGRAMA DE OBJETOS Un diagrama similar a losdiagramas de clase, pero que representa el estado de lasinstancias de la clase y sus relaciones en un punto en eltiempo; muestra los objetos y sus relaciones. Tambiénmuestra la opcionalidad (el cliente puede tener cero o máscontratos de renta) y la cardinalidad (el contrato de renta sólopuede tener un cliente). (10)DIAGRAMA DE SECUENCIA En UML, un diagramade secuencia ilustra una sucesión de interacciones entreinstancias de objetos a través del tiempo. A menudo se utilizapara ilustrar el procesamiento descrito en escenarios de casosde uso. (10)DIAGRAMA ENTIDAD-RELACIÓN (E-R) Unarepresentación gráfica de un modelo E-R. (8)DIAGRAMA HIJO El diagrama que resulta al expandir unproceso del Diagrama 0 (conocido como proceso padre). (7)DIAGRAMA PERT Una herramienta que se utiliza paradeterminar las actividades críticas de un proyecto. Se puedeutilizar para mejorar la calendarización de un proyecto yevaluar su progreso. Significa Técnica de Revisión yEvaluación de Programas. (3)DICCIONARIO DE DATOS Una obra de consulta coninformación sobre los datos (metadatos) creados por elanalista de sistemas con base en los diagramas de flujo dedatos; recopila y coordina términos de datos específicos,confirmando lo que cada término significa para distintaspersonas en la organización. (8)DIRECCIÓN IP (PROTOCOLO DE INTERNET) Elnúmero que se utiliza para representar una computadoraindividual en una red. El formato para una dirección IP es999.999.999.999. (16)DISEÑO DE APLICACIÓN CONJUNTA (JAD) Lametodología propietaria de IBM para las entrevistas de panelcon analistas, usuarios y ejecutivos para realizar el análisisde requerimientos en forma conjunta. (4)DOCUMENTACIÓN Material escrito creado por elanalista que describe la forma de ejecutar el software,muestra las generalidades del sistema o detalla el código delprograma utilizado. Los analistas pueden utilizar unaherramienta CASE para facilitar la documentación. (16)www.xlibros.com
560 GLOSARIOELEMENTO DE DATOS La unidad más pequeña de unarchivo o base de datos. Se utiliza como sinónimo de lapalabra atributo. (13)ELEMENTO DE INFORMACIÓN Una simple pieza dedatos, puede ser de base o derivado; se debe definir en eldiccionario de datos. (8).ENCAPSULAMIENTO En el análisis y diseño orientadosa objetos, un objeto está encapsulado por su comportamiento.Un objeto mantiene información sobre las cosas del mundoreal que representa en sentido verdadero. A un objeto se ledebe pedir o indicar que modifique su propia informaciónmediante un mensaje. (10)ENTIDAD Persona, grupo, departamento o sistema querecibe o crea información o datos. Uno de los símbolosprimarios en un diagrama de flujo de datos. (2) Vea tambiéndiagrama de flujo de datos, entidad externa.ENTIDAD ASOCIATIVA Un tipo de entidad que asocialas instancias de uno o más tipos de entidades y contieneatributos peculiares para la relación entre esas instancias deentidades. (2)ENTIDAD ATRIBUTIVA Uno de los tipos de entidadesque se utilizan en los diagramas entidad-relación. Es útil paradescribir atributos, en especial los grupos repetitivos. (2)ENTIDAD EXTERNA Un origen o destino de datos quese considera externo para el sistema que se está describiendo.También se le conoce como entidad. (7) Vea tambiéndiagrama de flujo de datos.ENTORNO Cualquier cosa externa a una organización.Existen varios entornos, como el físico, económico, legal ylos entornos sociales. (2)ENTRADA Cualquier dato, ya sea texto o números, que seintroduce en un sistema de información para fines dealmacenamiento o procesamiento mediante formularios,pantallas, voz o formularios de llenado interactivos basadosen Web. (12).ENTREGABLES El software, la documentación, losprocedimientos, los manuales de usuario o las sesiones decapacitación que un analista de sistemas entrega a un clientecon base en promesas contractuales específicas. (3)ESPAÑOL ESTRUCTURADO Una técnica para analizarlas decisiones estructuradas con base en la lógica de laestructura e instrucciones en lenguaje simple, como sumar,multiplicar y mover. (9)ESQUEMAS DE XML Una forma precisa de definirel contenido de un documento de XML; puede incluir elnúmero exacto de veces que puede ocurrir un elemento,el tipo de datos dentro de los elementos, los límites sobre losdatos y el número de posiciones a la izquierda y derecha deun número decimal. (8)ESTATUTOS DEL PROYECTO Un documento quedescribe los resultados esperados del proyecto de sistemas(entregables) y el periodo de tiempo para la entrega; enesencia se convierte en un contrato entre el analista en jefe(o administrador del proyecto) y su equipo de análisis conlos usuarios de la organización que solicitan el nuevosistema. (3)ESTRUCTURA DE DATOS Estructuras compuestas deelementos de información; por lo general se describenmediante el uso de notación algebraica para producir unavista de los elementos. El analista empieza con el diseñológico y después diseña las estructuras de datos físicas. (8)FACILIDAD DE USO La forma que tienen losdiseñadores de evaluar los sistemas e interfaces que creancon vista a considerar todas las cuestiones de HCI quepuedan con el mayor detalle posible. (14)FASE DE EXPLORACIÓN Es la fase inicial deldesarrollo ágil en donde el analista evalúa su convicción deque la metodología ágil es la correcta, después ensambla elequipo de desarrollo y evalúa sus habilidades. Puede durarunas cuantas semanas o unos cuantos meses. (1)FASE DE PUESTA EN PRODUCCIÓN La fase en eldesarrollo ágil cuando se libera el software y se recibe laretroalimentación para mejorar el producto de software. Elproceso de liberar las versiones del producto se puede llevara cabo con una frecuencia incluso semanal. (1)FAVICON Un pequeño icono que aparece a un lado decualquier dirección marcada como favorita en un navegador.Al copiar el vínculo marcado como favorito al escritorio seobtiene una versión más grande del icono y se copia ahí. Sepueden generar favicons únicos mediante un generador deiconos de Java u otros programas de gráficos. (11)FIREWALL Software de seguridad computacional que seutiliza para erigir una barrera entre la LAN de unaorganización e Internet. Aunque evita que los hackers entrena una red interna, también evita que los miembros de laorganización obtengan el acceso directo a Internet. (16)FLUJO DE DATOS Datos que se mueven en el sistema deun lugar a otro; la entrada y la salida se representan medianteel uso de una flecha con punta en los diagramas de flujo dedatos. (7)FOLKLORE Una técnica de documentación de sistemasbasada en los métodos tradicionales que se utilizan pararecopilar información sobre las personas y las leyendas. (16)GRÁFICO DE GANTT La representación gráfica de unproyecto que muestra la actividad de cada tarea como unabarra horizontal, cuya longitud es proporcional al tiempo enel que se va a completar. (3)GRUPO REPETITIVO La existencia de muchos de losmismos elementos en una estructura de datos. (8) Veatambién estructura de datos.HERENCIA En el análisis y el diseño orientados a objetos,las clases pueden tener hijos. La clase padre se conoce comola clase base, y la clase hijo se conoce como clase derivada. Laclase derivada se puede crear de manera que herede todos losatributos y comportamientos de la clase base. (10)HERRAMIENTAS CASE Herramientas de ingeniería desoftware apoyada por computadoras que incluyen lacapacidad de crear diagramas, análisis y modeladoautomatizados basados en computadora. (1)HERRAMIENTAS CASE DE BAJONIVEL Herramientas CASE utilizadas por los analistaspara generar código fuente de computadora, con lo cualwww.xlibros.com
GLOSARIO 561eliminan la necesidad de programar el sistema. (1) Veatambién herramientas CASE.HIPERVÍNCULO Cualquier palabra resaltada en unsistema de hipertexto que muestra otro documento cuando elusuario hace clic en ella. (11)ICONO Pequeña imagen que representa una actividad yfunción, u otro elemento de un sistema operativo como unarchivo o un directorio, disponible para los usuarios cuandola activen, a menudo mediante un clic del ratón. Se usa confrecuencia en el diseño de GUI. (14)IMPLEMENTACIÓN La última fase del ciclo de vida deldesarrollo de sistemas, en la cual el analista asegura que elsistema está en operación y después permite a los usuarioshacerse cargo de su operación y evaluación. (16)INGENIERÍA DE SOFTWARE APOYADA PORCOMPUTADORA (CASE) Herramientas de softwareespecializadas que incluyen capacidades de diagramación,análisis y modelado automatizados basados en computadora. (1)INTERACCIÓN HUMANO-COMPUTADORA(HCI) El aspecto que permite la comunicación y lasinteracciones entre los humanos y la computadora; la capa dela computadora entre los humanos y la computadora. (14)INTERFAZ DE LENGUAJE DE COMANDOS Un tipode interfaz que permite a los usuarios controlar la aplicacióncon una serie de pulsaciones de teclas, comandos, frases oalguna combinación de estos métodos. (14)INTERFAZ DE LENGUAJE NATURAL Una interfazque permite al usuario hablar o escribir en un lenguajehumano para interactuar con la computadora. (14)INTERFAZ DE LLENADO DE FORMULARIOS Partede los elementos de diseño de GUI que pide de maneraautomática al usuario que llene un formulario estándar. Esútil para las aplicaciones de comercio electrónico. (14)INTERFAZ GRÁFICA DE USUARIO (GUI) Unainterfaz de usuario basada en iconos, con característicascomo menús y listas desplegables, y botones de opción. (14)JAVA Un lenguaje de programación orientado a objetosque permite ejecutar aplicaciones dinámicas en Internet. (11)JUEGO DE PLANEACIÓN Se utiliza en el desarrolloágil; el juego de planeación establece las reglas que puedenayudar a formular la relación del equipo de desarrollo ágilcon sus clientes comerciales. (1)LENGUAJE UNIFICADO DE MODELADO (UML) ElUML provee un conjunto estandarizado de herramientas paradocumentar el análisis y diseño orientados a objetos de unsistema de software. (10)LÍNEA DE SUSCRIPTOR DIGITAL (DSL) Protocolosque permiten la transmisión de datos de alta velocidad através del cable telefónico común. (16)LISTA DESPLEGABLE Uno de varios elementos dediseño de GUI que permite a los usuarios hacer clic en uncuadro que parece desplegarse en la pantalla y muestra unalista de alternativas, de las cuales se puede elegir una. (11)MANTENIMIENTO El mantenimiento dado al sistemade información para mejorarlo o corregir problemas empiezaen esta fase del SDLC y continúa durante la vida del sistema.Cierta parte del mantenimiento se puede realizar de maneraautomática al conectarse al sitio Web del distribuidor. (1)MASHUPS Una nueva aplicación que se crea al combinardos o más API (interfaces de programación de aplicaciones)basadas en Web.MENÚ DESPLEGABLE Uno de varios elementos dediseño de GUI que provee un menú en pantalla de opcionesde comandos que aparecen una vez que el usuario seleccionael nombre del comando en una barra de menús. (14) Veatambién lista desplegable.MÉTODO En UML, una acción que se puede solicitar decualquier objeto de la clase; los procesos que una clase sabecómo realizar. (10)METODOLOGÍA ÁGIL (O MODELADO ÁGIL) Unametodología de desarrollo de sistemas que tiene valores,principios y prácticas útiles para los analistas de sistemas quedesean una metodología flexible, interactiva y participativa.(6) Vea también programación extrema.METODOLOGÍA DE DESARROLLO DESISTEMAS Cualquier metodología aceptada para analizar,diseñar, implementar, probar, mantener y evaluar un sistemade información. Algunos ejemplos de metodologías son:SDLC, metodologías ágiles, y el análisis y diseño desistemas orientados a objetos. (1) Vea también ciclo de vidadel desarrollo de sistemas.MINERÍA DE DATOS Técnicas que aplican algoritmospara extraer patrones de datos guardados en almacenes dedatos corporativos que por lo general no son aparentes para loshumanos que toman las decisiones. También se le conocecomo descubrimiento de conocimiento en bases de datos(KDD). (14)MODELO DE ACEPTACIÓN DE TECNOLOGÍA(TAM) Un método basado en la investigación que permitea los analistas organizar su modo de pensar en cuanto a si losusuarios aceptarán y utilizarán la tecnología de información,incluyendo la utilidad y la facilidad de uso percibidas. (14)MODELO DE BASE DE DATOSRELACIONAL Representa a los datos en la base de datoscomo tablas bidimensionales llamadas relaciones. Mientrasque ambas tablas compartan un elemento de datos común, labase de datos podrá relacionar cualquier otro archivo o tablacon los datos en otro archivo o tabla. (13)MUESTREO Seleccionar de manera sistemática elementosrepresentativos de una población. Los analistas muestrean losdatos concretos, los datos de archivo y las personas durante ladeterminación de los requerimientos de información. (5)NAVEGADOR Software especial que se ejecuta encomputadoras conectadas a Internet y permite a los usuariosver páginas Web de hipertexto en Internet. Microsoft InternetExplorer y Mozilla Firefox son ejemplos de navegadoresgráficos. (11)NORMALIZACIÓN La transformación de los almacenesde datos y vistas de usuario complejas en un conjunto deestructuras de datos más pequeñas y estables. Las estructurasde datos normalizadas se pueden mantener con más facilidadque las estructuras complejas. (13)www.xlibros.com
562 GLOSARIOOBJETO En la metodología orientada a objetos, un objetoes una representación computacional de alguna cosa o eventodel mundo real; puede tener tanto atributos comocomportamientos. (10)OBSERVACIÓN ESTRUCTURADA DEL ENTORNO(ESTROBO) Un método de observación sistemática paraclasificar e interpretar elementos organizacionales queinfluyen en la toma de decisiones. Se basa en la técnica decrítica de cine conocida como mise-en-scéne. (5)ORGANIZACIÓN DE ARCHIVOS INDEXADOS Untipo de organización de archivos que utiliza archivos índiceseparados para localizar los registros. (13)PANTALLA Cualquiera de una variedad de alternativas devisualización que emplean los usuarios para ver el softwarede computadora, incluyendo los monitores y las pantallas deplasma o de cristal líquido. (11)PAQUETE En UML las cosas se pueden agrupar enpaquetes, a los cuales se les puede considerar comosubsistemas físicos. Los sistemas se implementan ydespliegan en paquetes. (10)PEGAJOSIDAD Una propiedad de las páginas Web,utilizada especialmente en el comercio electrónico. Lasherramientas que incrementan la pegajosidad de unapágina Web son aquellas que alientan a los clientes apermanecer más tiempo en la página, los ayudan anavegar de vuelta a la página si hacen clic en un vínculo eincrementan la probabilidad de que completen unacompra. (14)PENSAMIENTO EN OBJETOS Instruccioneselementales que el analista escribe en tarjetas CRC paraempezar a pensar en una forma orientada a objetos. (10)PLANIFICACIÓN DE RECUPERACIÓN DEDESASTRES Planes estratégicos y tácticos para ayudar alas personas y los sistemas a recuperarse en caso de desastresnaturales y provocados por los humanos. (16)PODCASTING La técnica de colocar archivos de audiodescargables en la Web. (11)POLIMORFISMO Comportamientos alternativos entrelas clases derivadas en las metodologías orientadas a objetos.Cuando varias clases heredan tanto atributos comocomportamientos, el comportamiento de una clase derivadapodría ser distinto al de su clase base o al de sus clasesderivadas hermanas. (10)PREGUNTA ABIERTA Un tipo de pregunta que se utilizaen entrevistas o encuestas y que abre el posible conjunto derespuestas disponibles para los que responden a laspreguntas. (4) Vea también pregunta binaria, preguntacerrada.PREGUNTA BINARIA Un subconjunto de preguntascerradas que se pueden responder sólo de dos formas: sí ono, verdadero o falso, y de acuerdo o en desacuerdo. (4) Veatambién pregunta cerrada, pregunta abierta.PREGUNTA CERRADA Un tipo de pregunta que seutiliza en entrevistas o encuestas y que limita el conjunto derespuestas disponibles para quienes responden a las preguntas.(4) Vea también pregunta binaria, pregunta abierta.PRIMERA FORMA NORMAL (1NF) El primer pasopara normalizar una relación en los datos que se utilizan enuna base de datos, de manera que no contenga gruposrepetitivos. (13) Vea también segunda forma normal, terceraforma normal.PROCESO Las actividades que transforman o modificanlos datos en un sistema de información. Pueden ser manualeso automatizadas. Se representan mediante un rectánguloredondeado en un diagrama de flujo de datos. (2)PROGRAMACIÓN EN PAREJA Una práctica básica dela metodología ágil, en la que dos programadores eligentrabajar juntos en la programación, las pruebas y hablan entresí sobre las formas de realizar el trabajo con eficiencia yefectividad. (6)PROGRAMACIÓN EXTREMA (XP) La programaciónextrema (XP) es una metodología de desarrollo de sistemasque acepta lo que conocemos como buenas prácticas dedesarrollo de sistemas y las lleva a los extremos. Es elgénesis de las metodologías ágiles. (3)PRONÓSTICO Los analistas de sistemas tienen quepredecir ciertas variables clave antes de enviar la propuestadel sistema al cliente. El pronóstico es el arte y la ciencia depredecir las variables clave, que a menudo se apoya en losmodelos matemáticos de pronóstico. (3)PROPUESTA DE SISTEMAS Una propuesta escrita quesintetiza el trabajo del analista de sistemas en el negociohasta ese punto, e incluye recomendaciones y alternativaspara resolver los problemas de sistemas identificados. (3)PROVEEDOR DE SERVICIOS DE APLICACIÓN(ASP) Una empresa que hospeda software de aplicación ylo renta a otras empresas para usarlo en la Web. Se incluyenlas aplicaciones tradicionales así como las de colaboración yadministración de datos. (16)PROVEEDOR DE SERVICIOS DE INTERNET(ISP) Una empresa que provee acceso a Internet y quepuede proveer otros servicios, como el hospedaje Web y elanálisis del tráfico Web, por un costo. (12)PRUEBA DE SISTEMAS La sexta fase en el SDLC(junto con el mantenimiento). Usa tanto los datos de pruebacomo los datos en vivo en un momento dado para medir loserrores, la oportunidad de la respuesta, la facilidad de uso, elorden apropiado de las transacciones, el tiempo inactivoaceptable, la comprensión de los manuales de procedimientosy demás aspectos del nuevo sistema. (16)RECORRIDO ESTRUCTURADO Una revisiónsistemática realizada por expertos en relación con laprogramación y el desarrollo del sistema en general, pararesaltar los problemas y permitir que el programador oanalista realice las modificaciones apropiadas. (16)RED DE ÁREA LOCAL (LAN) El cableado, hardware ysoftware utilizados para conectar estaciones de trabajo,computadoras y servidores ubicados en un área geográficaconfinada (por lo general dentro de un edificio o campus). (15)RED DIGITAL DE SERVICIOS INTEGRADOS(ISDN) Un servicio de red conmutada que proveeconectividad digital de un extremo a otro para transmitir voz,www.xlibros.com
GLOSARIO 563datos y video en forma simultánea a través de una sola líneaen vez de a través de varias. (16)REGISTRO Una colección de elementos de datos quetienen algo en común con la entidad descrita. (13)REGLAS DE NEGOCIO Instrucciones específicas parael funcionamiento de una organización, que proveen ladescripción lógica de las actividades de negocios. Se utilizanpara ayudar a crear diagramas de flujo de datos. (7)RELACIÓN Asociación entre entidades (algunas veces sele conoce como asociación de datos); puede tomar la formade uno a uno, de uno a varios, de varios a uno o de varios avarios. (13).REPOSITORIO DE DATOS Una base de datos centralizadaque contiene todos los diagramas, definiciones de formularios einformes, estructuras de datos, definiciones de datos, flujos ylógicas de los procesos, y definiciones de otros componentesde la organización y del sistema; provee un conjunto demecanismos y estructuras para lograr la integración uniformede datos con herramientas y de datos con datos. (8)RUBY ON RAILS Una combinación de lenguaje deprogramación y generador de código para crear aplicacionesWeb. (11)RUTA CRÍTICA La ruta más larga calculada mediante latécnica de programación PERT; la ruta que provocará elatraso de todo el proyecto de sistemas si ocurre inclusive unsolo día de retraso . (3)SALIDA Información que se entrega a los usuarios através del sistema de información mediante intranets,extranets o la Web, en informes impresos, en pantallas o através de audio. (11)SEGUNDA FORMA NORMAL (2NF) Al normalizar losdatos para una base de datos, el analista se asegura de quetodos los atributos que no sean claves dependan por completode la clave primaria. Se eliminan todas las dependenciasparciales y se colocan en otra relación. (13) Vea tambiénprimera forma normal, tercera forma normal.SEIS SIGMA (SIX SIGMA) Una cultura basada en lacalidad; el objetivo es eliminar todos los defectos. (16)SEUDOCÓDIGO Una técnica para crear instrucciones decomputadora que representan el paso intermedio entre ellenguaje natural y el código del programa; se utiliza pararepresentar la lógica de cada módulo en un diagrama deestructura. (16) Vea también diagrama de estructura.SISTEMA Una colección de subsistemas que estáninterrelacionados y son interdependientes; trabajan enconjunto para lograr metas y objetivos predeterminados.Todos los sistemas tienen entrada, procesos, salida yretroalimentación. Algunos ejemplos son un sistema deinformación computarizado y una organización. (2) Veatambién sistema cerrado, sistema abierto.SISTEMA ABIERTO Parte de la teoría general desistemas; un sistema que recibe libremente información,energía, personas o material prima como entrada. Los sistemasnunca son totalmente cerrados o totalmente abiertos, sino queexisten en un continuo desde el más cerrado hasta el másabierto. (2) Vea también sistema cerrado.SISTEMA CERRADO Parte de la teoría general desistemas; un sistema que no recibe información, energía,personas o materias primas como entrada. Los sistemasnunca son totalmente cerrados o totalmente abiertos, sinoque existen en un continuo desde el más cerrado hasta el másabierto. (2) Vea también sistema abierto.SISTEMA DE ADMINISTRACIÓN DE BASES DEDATOS (DBMS) Software que organiza los datos en unabase de datos; provee la capacidad de almacenamiento,organización y recuperación de los datos. (13)SISTEMA DE INFORMACIÓN GERENCIAL(MIS) Un sistema de computación compuesto porpersonas, software, hardware y procedimientos quecomparten una base de datos común para ayudar a losusuarios a interpretar y aplicar los datos en el negocio. (1)SISTEMA DE PROCESAMIENTO DETRANSACCIONES (TPS) Un sistema de informacióncomputarizado desarrollado para procesar grandes cantidadesde datos para transacciones de negocios rutinarias, comonóminas e inventario. (1)SISTEMA DE SOPORTE DE DECISIONES (DSS) Unsistema de información interactivo que brinda soporte alproceso de toma de decisiones a través de la presentación deinformación diseñada de manera específica para lametodología de solución de problemas de la persona quetoma las decisiones y las necesidades de la aplicación. Notoma la decisión en lugar del usuario. (1)SISTEMA DE SOPORTE PARA EJECUTIVOS(ESS) Un sistema computacional que ayuda a losejecutivos a organizar sus interacciones con el entornoexterno al proveer soporte gráfico y de comunicaciones. (1)SISTEMA EXPERTO (ES) Un sistema de computadoraque captura y utiliza el conocimiento de un experto pararesolver un problema específico. Los componentes básicosson la base del conocimiento, un motor de inferencia y lainterfaz de usuario. (1)SISTEMAS DISTRIBUIDOS Sistemas computacionalesque están distribuidos en forma geográfica, además de quesu procesamiento, datos y bases de datos están distribuidos.Una arquitectura común para los sistemas distribuidos es elsistema cliente/servidor basado en LAN. (16)SISTEMAS EMPRESARIALES Sistemas deinformación que se integran a nivel de la organización (entoda la empresa) y que ayudan a las compañías a coordinarlos procesos organizacionales críticos. (1)SOFTWARE A LA MEDIDA Otro término para el softwarepersonalizado; es lo opuesto del software comercial para ventaen los canales de distribución tradicionales (COTS). Essoftware desarrollado para desempeñar una función específica,o dar soporte a una característica única de la organización. (1)SOFTWARE DE CÓDIGO FUENTE ABIERTO(OSS) Modelo y filosofía de desarrollo en relación con ladistribución de software de una manera libre y publicando sucódigo fuente, para que los usuarios y programadores puedanestudiarlo, compartirlo y modificarlo. El sistema operativoLinux es un ejemplo. (1)www.xlibros.com
564 GLOSARIOSOFTWARE DE VALIDACIÓN Software que revisa silos datos introducidos en el sistema de información sonválidos. Aunque la mayor parte de la validación de lasentradas que se realiza a través de software esresponsabilidad del programador, el analista debe saber quéproblemas comunes podrían invalidar una transacción. (15)SONDEO Preguntas de seguimiento que se utilizanprincipalmente durante las entrevistas entre los analistas ylos usuarios. (4) Vea también pregunta cerrada, preguntaabierta.TABLA DE DECISIONES Una forma de examinar,describir y documentar las decisiones estructuradas. Sedibujan cuatro cuadrantes para describir las condiciones,identificar las alternativas posibles de decisión, indicar lasacciones que se deben realizar y describir esas acciones. (9)TABLERO DE CONTROL Visualizador para los quetoman decisiones; incluye una variedad de visualizadores demedidas de desempeño (o rendimiento) relevantes. (11)TARJETAS CRC El analista crea tarjetas de Clases,Responsabilidades y Colaboradores para representar lasresponsabilidades de las clases y la interacción entre éstascuando se empieza a modelar el sistema desde unaperspectiva orientada a objetos. Los analistas crean lastarjetas con base en los escenarios que resumen losrequerimientos del sistema. (10)TERCERA FORMA NORMAL (3NF) Una forma en laque se eliminan todas las dependencias transitivas. Unadependencia transitiva es en la que los atributos que no sonclave dependen de otros atributos que tampoco son clave.(13) Vea también primera forma normal, segunda formanormal.TIPO DE ENTIDAD Una colección de entidades quecomparten propiedades o características comunes. (8)USUARIOS FINALES En una organización, los que noson profesionales de sistemas de información, queespecifican los requerimientos de negocios para lasaplicaciones de software y las utilizan. A menudo, losusuarios finales solicitan aplicaciones nuevas o modificadas,evalúan y aprueban las aplicaciones, y pueden servir en losequipos de proyectos como expertos de negocios. (1)VALOR PREDETERMINADO Un valor que asumirá uncampo, a menos que se introduzca un valor explícito en éste.(13)VALOR PRESENTE La cantidad total que vale una seriede pagos a futuro en la actualidad; una forma de evaluar losdesembolsos económicos e ingresos del sistema deinformación durante su vida económica, y de comparar loscostos hoy en día con los beneficios a futuro. (10)VOZ SOBRE PROTOCOLO DE INTERNET (VoIP) Elenrutamiento de los datos de voz a través de Internet. (15)WEBMASTER La persona responsable de actualizar y darmantenimiento a un sitio Web; comúnmente, al principio esel analista de sistemas durante el desarrollo de lasaplicaciones de comercio electrónico. (12)XP Vea metodología ágil y programación extrema. (6)www.xlibros.com
ACRÓNIMOS5651NF Primera forma normal2NF Segunda forma normal3NF Tercera forma normalAJAX Java Script asíncrono y XMLAPI Interfaz de programación de aplicacionesASP Proveedor de servicios de aplicacionesB2B Negocio a negocioB2C Negocio a consumidorCARE Reingeniería asistida por computadoraCASE Ingeniería de software asistida porcomputadoraCHUI Interfaz de usuario basada en caracteresCOTS Comercial para venta en los canalesconvencionalesCRUD Crear, leer, actualizar y eliminarCSCWS Sistema de trabajo colaborativo soportado porcomputadoraCSS Hojas de estilo en cascadaDBMS Sistema de administración de bases de datosDDE Intercambio dinámico de datosDFD Diagrama de flujo de datosDHTML HTML dinámicoDLL Biblioteca de vínculos dinámicosDSL Línea de suscriptor digitalDSS Sistema de soporte de decisionesDTD Definición de tipo de documentoEDI Intercambio electrónico de datosE-R Entidad-relaciónEIS Sistema de información para ejecutivosERD Diagrama entidad-relaciónERP Planificación de recursos empresarialesES Sistema expertoESS Sistema de soporte para ejecutivosFAQ Preguntas frecuentesFPC Conteo de puntos de funciónFTP Protocolo de transferencia de archivosGIF Formato de intercambio de gráficosGUI Interfaz gráfica de usuarioHCI Interacción humano-computadoraHTML Lenguaje de marcado de hipertextohttp:// Protocolo de transferencia de hipertextoICTS Tecnologías de comunicación de informaciónISDN Red digital de servicios integradosISP Proveedor de servicios de InternetJAD Diseño de aplicación conjuntaJPEG Grupo de expertos unidos en fotografíaKDD Descubrimiento de conocimiento en bases dedatosKWS Sistemas de trabajo de conocimientoLAN Red de área localMICR Reconocimiento de caracteres de tintamagnéticaMIS Sistema de información administrativaMRP Planificación de requerimientos de materialesOAS Sistemas de automatización de oficinasOCR Reconocimiento óptico de caracteresOID Identificador de objetosOLAP Procesamiento analítico en líneaOLE Vinculación e incrustación de objetosOOA Metodología orientada a objetosOSS Software de código fuente abiertoPERT Técnicas de revisión y evaluación deprogramasPHP Preprocesador de hipertexto; un lenguaje deprogramación de código fuente abiertoPKI Infraestructura de clave públicaQBE Consulta por ejemploRAD Desarrollo rápido de aplicacionesSAAS Software como un servicioSAN Red de área de almacenamientoSDLC Ciclo de vida del desarrollo de sistemasSET Transacción electrónica seguraSLA Acuerdo de licencia de softwareSOA Arquitectura orientada a serviciosSQL Lenguaje de consulta estructuradoSSL Nivel de sockets segurosSTROBE Observación estructurada del entornoTAM Modelo de aceptación de tecnologíaTPS Sistema de procesamiento de transaccionesTQM Administración de calidad totalUML Lenguaje unificado de modeladoURL Localizador uniforme de recursosVB.NET Visual Basic .NET, un entorno deprogramación de MicrosoftVOIP Voz sobre protocolo de InternetVPN Red virtual privadaWAN Red de área ampliaWAP Protocolo de aplicaciones inalámbricasWIMAX Interoperabilidad mundial para acceso pormicroondasWLAN Redes de área local inalámbricasWMP Windows Media PhotoWWW World Wide WebXP Programación extremaXSLT Transformaciones de lenguaje de hojas deestilo extensiblewww.xlibros.com
ÍNDICE566Nota: Los números de páginaseguidos por una f cursivaindican que se trata de unafigura.SÍMBOLOS# (libra), 297* (asterisco), 246, 304, 414,455[ ] (corchetes), 232{ } (llaves), 231 (signo de suma), 231, 246, 298,383« » (comillas angulares), 308 (menor que), 244 (signo de igual), 231, 298 (mayor que), 244, 262, 266,276, 455, 471— (guión), 297 (signo de resta), 297() (paréntesis), 232, 298/ (barra diagonal), 257AAccesorios (props) de oficina,145-46Acción del usuario, mínima,459-60Accionesárboles de decisión, 271-73tablas de decisión, 266-71Actividades comerciales, listado,207-08, 209fActoresacerca de, 36-38, 142ejercicios, problemas, 54en diagramas conductuales,287-88en diagramas de secuencia,294-96, 300en el modelado de casos de uso,17, 41-43, 314Administraciónde equipos, 83-86de nivel medio, 44de proyectosacerca de, 56actividades de análisis ydiseño, 83-88análisis de costos ybeneficios, 72-77de los proyectos de comercioelectrónico, 86ejercicios, 92, 94-98estatutos, 87fracaso, 87-88inicio, 56-62lidiar con la complejidad, 82necesidades de hardware ysoftware, 63-72planeación y control deactividades, 77-82programación de proyectosmediante diagramas deGantt, 79-80propuesta de sistemas, 88-91selección, 61-62uso de diagramas PERT,80-82viabilidad, 62-63estratégica, 45Administración de calidad total(TQM)arquitectura orientada aservicios (SOA) para, 522-23metodología modular, 520-22recorridos estructurados,517-18, 519fresponsabilidad, 516-17y diseño de sistemasdescendente (top-down),518-20y Seis Sigma, 516, 517fAdobe Dreamweaver, 348Agente de cambio, 7-8Agregación, 305Agrupamiento, como patrón, 431Ajax (JavaScript asíncrono y XML)acerca de, 6definición, 349fy el diseño de entradas, 387-88y el particionamiento, 213y la salida de páginas Web, 358-60y los diagramas de secuencia,302-03Ajuste para HCI, 442-43Alcance, metodología ágil, 170-71Almacenamiento. Vea AlmacenesAlmacenescorporativos de datos, 429-32de datoscontenido, 236-38desarrollo, 241metodologías, 403símbolo, 194f, 195Vea también Diseño de bases dedatosAmerican Express, 432Análisisde costos y beneficios, 72-79,546de flujo de efectivo, 75de punto de equilibrio, 74-75de sistemas, 6, 228-58de valor presente, 75-77Analista de sistemascualidades, 6deberes, 1, 10derechos, 181habilidades requeridas, 20roles, 6-8Anomalía(s)de actualización, 426de eliminación, 426de inserción, 426en las tablas, 425-26Anuncios, 141Apertura organizacional, 26Aplicaciones web híbridas, 468Árboles de decisiones, 271-73Archivos de transacciones, 410-11Archivos maestros, 410, 424-26Áreas de texto, 381Arquitectura orientada a servicios(SOA), 5, 522-23, 533Arrendamiento de hardware, 67Artefactos para UML, 311-12Aseguramiento de calidad,implementaciónacerca de, 515auditoría, 529documentación, 523-26ejercicios, 551-54evaluación, 546-48de sitios Web corporativos,548-50proceso de prueba, 526-28y administración de calidad total(TQM), 516-23y capacitación de usuarios,536-39y conversión de sistemas,539-41y cuestiones de seguridad, 542-44y el desarrollo ágil, 170y mantenimiento, 528-29y metáforas organizacionales,541-42y planeación de recuperación dedesastres, 544-46y sistemas distribuidos, 529-36Asignar prioridades, 59Asistentes, 464Asociacionescomo patrones, 431entre clases, 304-05Asterisco (*), 246, 304, 414, 455Atributosde datos, 34de entidades, 405-08en clases, 282-83, 303, 306-08en consultas, 470-471en formularios, 417-20en metodologías O-O, 297-300en UML, 286-87funcionales, 343modificación, 310-11que no son claves, 413Auditoría de sistemas, 529Ayuda, opciones de, 464www.xlibros.com
ÍNDICE 567BBanca y recuperación de desastres,545Barrade navegación, 467diagonal (/), 257Base(s)de acoplamiento, 457de datosacerca de, 403-05análisis visual, 446-48comparación con almacenescorporativos de bases dedatos, 429de red, 412recuperación, presentación dedatos, 424, 427frelacionales, 404, 411-12jerárquica, 412Beneficiosintangibles, 73-74tangibles, 72-73Bienestar para HCI, 443Blogs, 357Bluetooth, 5Botonesaumentar/disminuir, 381básico, 389de comandos, 381de navegación, 354, 367de opción, 380en el comercio electrónico,481-82en el diseño, 380-86, 400-401en GUI, 460para validación, 505Breadboarding (prototipo deparches), 156Bugs, 12-13, 170, 518CCaché, 354, 355Cajas de tiempo (timeboxing), 179Calendarización y planeación deactividades, 79-82Campoen los registros, 408, 501ocultos, 382Capade acceso a datos, 302de negocios, 302Capacidad de uso, 444-48Capacitación, 536-39Captura de datos, 136, 138-39,494-99Cargas de trabajo, estimar, 64-65Carriles, 291-94Carrito de compras, 205, 391Cartas de presentación, 88CASE, herramientas. VeaIngeniería de softwareauxiliada por computadora(CASE), herramientasCasillas de verificación, 380Caso de la CPUanálisis OO, 320-27diagrama E-R, 437-40diagramas de flujo de datos,222-27diccionarios de datos, 252-58entrada de datos precisa, 512-14entrevistas, 128-30formularios, 399-402HCI, 479-83herramientas CASE, 23Microsoft Visio, Visible Analyst,51-55, 100-01prototipos, 186-91salida, 366-70seguridad, recuperación dedesastres, 554-56STROBE, 154tablas de decisiones, 277-78CD-ROM, 334Centro de bibliotecas de cómputoen línea (OCLC), 495Ceroa cero, relación, 406-07a muchos, relación, 406-07a uno, relación, 406-07Cerrazón, organizacional, 26Certificados digitales, 544Ciclo de vida del desarrollo desistemas (SDLC)comparacióncon el modelado ágil, 14-17,19f, 177-79con la metodología OO, 17-19con RAD, 165-66fases, 8-13herramientas CASE, 14prototipos como alternativa,157-58y HCI, 9Clasesabstractas, 299, 307-08activas, 299atributos, métodos, 308-11buscar, 308de control (activas), 299de entidad, 299de interfaz, 299de límite (interfaz), 299mensajes entre, 308-09para el análisis OO, 282-83relaciones entre, 304-06tipos de, 299y tarjetas CRC, 284-86Clasificación de códigos, 487-89Clavesde registrosacerca de, 409-10en diagramas E-R, 408,421-22en normalización, 413-23símbolos, 252únicas y primarias,comparación, 424primariasalmacenadas en cookies, 302como elemento de estructurade datos, 238en los registros, 409-10, 417,419-26símbolo, 252Cliente en el sitio, 171, 176Codificación de derivaciónalfabética, 486-87Código(s)de autovalidación (dígitos deverificación), 501-03de barras, 498de función, 491de secuencia simple, 486secuencia por bloque, 487subconjunto de dígitossignificativos, 489-90y codificaciónclasificación, 487códigos de barras, 498de cifrado, 488de derivación alfabética,486-87de secuencia en bloque, 487de secuencia simple, 486definición, 485en el desarrollo ágil, 168-69función, 491lineamientos, 491-93mnemónicos, 490ocultar, revelar, 488-89subconjunto de dígitossignificativos, 489-90Unicode, 490uso, 493Colección, 305Color en el diseño de pantallas,389Comentarios en un formulario, 372Comercio electrónicoadministrar proyectos, 86entrada de datos precisa, 506-07integrar aplicaciones, 4-5navegación, 465-68retroalimentación, 465seguridad y privacidad, 543-44Comercio-m (comercio móvil), 5Comillas angulares (« »), 308Composición, 306Compra de hardware, 67Computación en nube, 531-33Computadora portátil, 457Comunicacióncomo valor ágil, 14diagramas, 296-97, 314diseñar diálogo, 458-61eficiencia, 179en el modelado ágil, 167en el modelado de casos de uso,36-38en equipos, 84-85oportunidad de consultoría, 46Vea también Retroalimentacióny DFD, 217y la planeación de recuperaciónde desastres, 545y tablas, gráficas, 89-91Condición, condicionesalternativas, 266-73de guardia, 309Construx, 82Consultasdiseñar, 468-69lenguaje estructurado para(SQL), 473-74mediante ejemplo (QBE),471-73tipos, 469-71Consultor, 6Consumidores. Vea UsuariosContraseñas, 542Control operacional, 43-44Controles deslizables, 381Conversióndirecta, 539gradual, 540modular, 540paralela, 540Corchetes ([ ]), 232Correo electrónico, 334Cosas de anotación, 312Costar, 82Costosintangibles, 74tangibles, 74COTS. Vea software comercial deventa en canalesconvencionales (COTS)Crear, Leer, Actualizar, Eliminar(CRUD), 204, 308, 309fCuadrado doble, símbolo, 194Cuadro(s)de diálogo, 380-81, 452-53con controles en pestañas,380de lista, 380de mensaje, 381de texto, 380y listas desplegablesdiseño, 358, 387, 460ejercicios, 319, 369-70, 399,401-02en el modelado ágil, 187-88ilustrados, 495para la navegación, 383razones para usar, 380-81utilizados en el análisis,320-22Cuellos de botella, 496Cuerpo de formulario, 372Cuestionariosacerca de, 114administrar, 122diseñar, 119, 121elección de palabras, 115-16,118www.xlibros.com
568 ÍNDICEplanear, 114-15preguntas abiertas, 115, 116fusar escalas, 118-19Cuestiones de costocomo metodología ágil, 14de prototipos, 157ejercicios, 98en compras de software, 68-69en el modelado ágil, 169-70riesgos inherentes, 181tangible, intangible, 74-77y fracaso, 88fy viabilidad, 63Cuestiones financieras. VeaCuestiones de costoCultura organizacional, 24, 45-46,180DDaltonismo, 450Datos, vistas físicas y lógicas de,411-13Decisiones estructuradasejercicios y problemas, 275-76,279-80elección de técnica, 273y árboles de decisiones, 271-73y español estructurado, 261-65y tablas de decisiones, 266-71Decoración, iluminación, 146Definiciónde tipo de documento (DTD),244-46, 506del problema, 57-61Dependenciasparciales, 413-14transitivas, 413-14Desarrollador Web, 349Desarrollo rápido de aplicaciones(RAD), 163-66Descubrimiento de conocimiento enbases de datos (KDD), 429-32Desempeño para HCI, 443Desencadenador, 205Desnormalización, 426-28Detección de marcas, formularios,497-98DEVONthink Professional Office,147Diagrama(s)0dibujo, 196-97, 210-11ejemplo, 199fen los diccionarios de datos,238-39y particionamiento, 214fde actividadesacerca de, 290-92carriles, 291-94creación, 292-94definición, 287entradas en el repositoriopara, 294de casos de uso, 287, 288f, 313,314de clasesacerca, 297-300asociaciones, 304-05definición, 287ejemplo, 288fen el modelado de casos deuso, 314gen/spec (generalización/especialización), 306-09mejora, 303relaciones todo/parte, 305-06de componentes, 312de conectividadconcentradores, 534-35estaciones de trabajo, 535de comunicación, 296-97, 314de descomposición de red,533-34de despliegue, 312, 315de estados, 287, 288f, 309-11,314de estructura, 521-22de flujo de datos a nivel decontextocaso de la CPU, 51-55desarrollo, 195-96, 208-10expansión, 197fy descripción de sistemas,29-30de flujo de datos (DFD)caso de la CPU, 222-27desarrollar, 195-200ejemplo de, 207-13ejercicios, problemas, 219-21errores encontrados, 198-200,201ffísicos, 202f, 203-06, 212-13,215flógicos, 200-203, 212-13particionamiento, 206-07, 213símbolos utilizados, 194-95usos, 10ventajas, 193-94y casos de uso, 205-06y comunicación, 217y el modelado de eventos,205y especificaciones deprocesos, 260-61de Gantt, 79-80, 96-97de modelos de datos, 416f-20fde secuenciaacerca de, 294-96capas utilizadas, 302-03clases utilizadas, 300-02definición, 287ejemplo, 288fmejora, 300-03para oportunidad deconsultoría, 313trabajo con, 314E-R, 421-22hijoscomparación con procesopadre, 199fdesarrollo de, 198, 211-12en diccionarios de datos,238-39mejorar, 288fpara el modelado de casos deuso, 38, 43para UML, 286-87PERT, 82, 97, 101Diccionarios de datosacerca de, 228-29almacenes de datos, 236-38, 241análisis de entradas y salidas,239-41caso de la CPU, 252-58creación, 238-41ejercicios, problemas, 249-51elementos de datos, 234-36, 248estructuras de datos, 231-33, 242fflujos de datos, 229-31uso, 242-47y DFD, 229-30y español estructurado, 264fy especificaciones de procesos,265-66y XML, 243-47Dígito de verificación, 409, 501-03Dinero. Vea Restricciones de costoDinoTech, 352-53, 352f,467-68Discapacidades y HCI, 449-50Diseñoconsistente en el diálogo, 461de aplicación conjunta (JAD),111-14, 127de bases de datosbases de datos relacionales,411-13diseño de relaciones dearchivos maestros/bases dedatos, 424-26ejercicios, 434-36normalización, 413-23objetivos de las bases dedatos, 403-04realidad, datos, metadatos,404-10tipos de archivos para,410-11Vea también Almacenes dedatosde sistemas descendente (top-down), 518-20metodología ágil para el, 169modular de programas, 520-22Dispositivos portátiles, 348, 375Documentación y aseguramientode calidad, 523-26Documentoscualitativos, 140-41cuantitativos, 136-39Dominio en bases de datos, 413Dragon Naturally Speaking, 458fDuplicación remota sincrónica,545DVD, 334EEficiencia en proyectosestructurados, 177-79Elementosbase, 205de datos, 234-36, 248, 408-10,411fderivados, 205Encabezado de un formulario,372Entidadesatributos, 408clases, 299claves, 409-10en bases de datos, 405integridad, 424registros, 408-09relaciones, 30-35, 405-08y flujo de datos a nivel decontexto, 29-30Entidad-relación (E-R), modelocaso de la CPU, 51-55diagramas, 406fejemplo, 407-08símbolos, 407futilizado en sistemas, 30-35y claves de registro, 421-22Entrada(s)acerca de, 485calidad mediante la validaciónde la entrada, 499-506captura de datos, 494-99codificación, 485-93criterios, 371de acción, 276f, 278diseño de intranets y de internet,389, 391ejercicios para, 508-11ejercicios y problemas, 394-98en el comercio electrónico,506-07flujos de datos, 260formularios, diseño deimpresos, 371-76para Web y pantalla, 376-89íconos, 378-79mensajes, 309retroalimentación, 462-63y GUIs, 379-82Vea también SalidaEntrada/salida, formularios de,454-55Entregas pequeñas, 171, 175Entrevistasacerca de, 103-04caso de la CPU, 128-30informe, 109-10preguntas abiertas, 105-06preguntas cerradas, bipolares,106-07preparación, 104-05secuencia de preguntas, 107-09sondas, 107Equipo de oficina, 145-46ERP. Vea Planeaciónwww.xlibros.com
ÍNDICE 569Errores. Vea BugsÉtica y minería de datos, 432, 544Escalas, 118-19Escenario de casos de uso, 287,288f, 290f, 296Escuchary HCI, 448, 540metodología ágil, 169Español estructurado, 261-65,266f, 273-74Especificaciones del procesoacerca de, 259-60diccionario de datos, 265-66ejercicios, problemas, 274,279-80formato, 260-61no requeridas, 260objetivos, 260Espejos de datos (data mirroring),545Esquema, 246-47, 412, 506Estados Unidos, convenciones deTI en, 441, 543, 545Estereotipos, 300Estilo cognoscitivo, 444-48Estrategias de conversión,consideraciones, 539-41Estructura(s)de casos, 261, 263fde datos, 231-33, 242fde decisión, 261, 263f, 264-65de embudo, 109de pirámide, 108-09en forma de diamante, 109, 110fsecuenciales, 261, 263f, 264Esun, 307f, 308Esuntipode, 307f, 308Evaluación, 546-48Eventos, 309, 314diferidos, 310Experiencias de Hypercaseacerca de, 20administración de proyectos, 84,92cuestionarios, 123DFD, 218diagramas, 317diseño de bases de datos, 433elementos de datos, 248entrada de datos, 393-94,507-08entrevistas, 112español estructurado, 274estrategias de análisis, 47FOLKLORE, 525implementación, 551interfaces, 475investigación, 141prototipos, 182salida, 360STROBE, 149Expert Choice, software, 59Experto de soporte, 6-7Exploración en el proceso ágil, 15-16Extensión, relaciones, 37-38FFAQ, 353Fasede implementación de RAD,164-65de planeación de requerimientosdel RAD, 164Filtrado, 543-44Firefox, 349Firewall, sistemas de, 542-44Firma, verificación de, deformulario, 372Flujos de datos, 229-31de interfaz, 198FOLKLORE, 523-25Formas artísticas, 523-25Formulariosclandestinos, 139color, 389copiar, 44de captura de datos, 100, 136-38de detección de marcas, 497-98de entrada/salida, 134, 371-72,454-55de negocios, 376-78diseño de, 213-14, 372-76, 377,496en la metodología estructural,177-78preimpresos, 331-32, 333utilidad, 547Web, 459-60Foros, 464-65Fuentes, 333, 347, 375, 448Funciones de búsqueda, 467-68GGadgets, 347General Motors, 432Generalización, 306relación, 38Generalización/Especialización(gen/spec), diagramas de,306-09Gráficas, gráficos y predisposición,340-41en el diseño de pantallas, 345, 346fpara sitios Web, 354uso, 90-91Guión (—), 268Guión, 142, 143bGurús, 168HHardware, 253-54. Vea tambiénSoftwareHerencia, 283-84, 306-07Hipervínculos, 464Historias de usuarios, 172-74, 175fHojas de estilo en cascada, 354-55,357HTML, 243-44, 348, 349, 355fHumildad en el modelado ágil,167-68Humor en los documentos, 140-41IÍconos, 378-79Identificaciónacceso en formularios, 372por radio frecuencia (RFID),489-99Identificador de objeto (OID), 410IF-THEN, instrucciones, 267, 272IF-THEN-ELSE, instruccionescomo español estructurado, 261,265en tabla de decisiones, 266ilustración, 262f, 263f, 264fuso en la validación, 505Igual, signo (=), 231, 298Iluminación de decoración, 146Impresoras como salida, 331-32Inclusión, relaciones, 37Información, 1, 146, 179, 487-89Informesarchivos, 411en VA, 254-55para investigación, 136, 137fInfraestructura de claves públicas(PKI), 544Ingeniería de software auxiliadapor computadora (CASE),herramientasacerca de, 14caso de la CPU sobre, 23en proyectos estructurados,177-79impacto, 229Instanciamiento, 282Instrucciones en el formulario, 372Integraciónde sistemas inalámbricos, 5de sistemas móviles, 5Integridadde dominio, 424-25referencial, 424Inteligencia artificial (AI), 3Interacción humano-computadora(HCI)acerca de, 9, 11aplicaciones web híbridas, 468buena práctica, 450-51consideraciones físicas, 448-49determinar las necesidades, 10diálogo, 458-61diseñar, 441-42ejercicios, 476-78en las entrevistas, 104interfaces, 451-58limitaciones, discapacidades ydiseño, 449-50Vea también Comunicacióny ajuste, rendimiento, bienestar,442-43y el análisis visual de bases dedatos, 446-48y el comercio electrónico,465-68y el modelo de aceptación detecnología (TAM), 443-44y la capacidad de uso, 444-51y la retroalimentación, 461-65y las consultas, 468-74Interfaz, interfacesde apuntar y hacer clic, VeaInterfaz gráfica de usuario(GUI), diseñode lenguaje de comandos, 455,456fde lenguaje natural, 451-52de menús, 453-54de pregunta y respuesta, 452-53de programación deaplicaciones (API), 468evaluación, 458gráfica de usuario (GUI)acerca, 456-57definición, 379diseño, 380-82menús, 454y captura de datos, 495para llenar formularios (entrada/salida), 454-55plumillas, 457reconocimiento de voz, 458sensibles al tacto, 457-58Inventario de hardware, 64Investigación, 136-41Iteraciones, 17, 261, 263f, 265JJAD, 111-14, 127JavaScriptactivar, 387en la distribución páginas Web,355y Ajax, 6, 302-03, 349, 358-60Joomla!, 357Juego de planeación, 16-17LLenguajede acción, 451de marcado extensible (XML)proveer estandarización, 299validar, 506Vea también Ajax (JavaScriptasíncrono y XML)y la salida, 357-60y los diccionarios de datos,243-47unificado de modelado (UML)acerca de, 281clase, 282-83conceptos y diagramas,286-87diagramas de comunicación,296-97fases, 17-19herencia, 283-84paquetes y artefactos, 311-12trabajo con, 313-15uso para modelado, 315-16y modelado de casos de uso,287-90www.xlibros.com
570 ÍNDICELey para estadounidenses condiscapacidades, 449Leyendas en un formulario, 372-74Libra (#), símbolo de, 297Limitaciones y HCI, 449-50Llaves ({ }), 231Llenado de formularios, 371, 389Luhn, fórmula de, 503-04MMAC, atractivo de1Password, 392acerca de, 12Bento, 425DEVONagent, 467FileMaker Pro, 425Freeway Pro, 351OmniFocus, 173OmniGraffle, 35OmniPlan, 83Things, 520Yojimbo, 147Mantenimiento de sistemas, 12-13,17, 528-29Manualesde políticas, 141de procedimientos, 523Mapade imágenes, 381del sitio, 466Máscaras (skins) en sitios Web, 390Mayor que (>), símbolo, 244, 262,266, 276, 455, 471Memos, 140-41Menor que (<), símbolo, 244Mensaje, definir, 300Menús, 453-54con rollover, 466Metadatos, 404-10, 411fMetáforas, 140-41, 337, 541-42Métododefinir, 300determinar, 308-11, 314en clase de UML, 283estándar y personalizado, 298sobrecarga, 298-99y salida, 330-40Metodología orientada a objetos(OOA), 10MICR (reconocimiento decaracteres de tintamagnética), 497MicrosoftExcel, 444-46Expression Web, 348Visiocaso de la CPU, 51-55,100-01comparación conOmniGraffle, 35ilustración, 353fusos, 14Minería de datos, 429-32Mini especificaciones. VeaEspecificaciones de procesosMnemónicos, códigos 490Modeladoágilacerca de, 155actividades, 168-69ejercicios, problemas, 183-85en comparación con SDLC,14, 19f, 177-79lecciones de, 175-76medir el impacto, 181prácticas básicas, 171, 172fprincipios, 168proceso de desarrollo, 15-17,171-75riesgos inherentes, 179-81valores, principios, 166-68variables de control derecursos, 169-71Vea también Prototiposde aceptación de tecnología(TAM), 443-44de casos de usoalcance del sistema, 38caso de la CPU sobre, 51-55como técnica OO, 287-90creación de descripcionespara, 43definición, 35-36definir, 314diagramas, 38, 43durante la resolución deproblemas, 61escenarios, 38-39, 49formulario, 205f,niveles, 39-43paquetes y artefactos, 311-12relaciones, 36-38símbolos, 36y DFD, 205-06de espiral, 18-19de eventos, 205, 206fde redes, 533-35Módulo administrable, 159Motivación, 86Muchos a muchos (M:N),relaciones, 405-06, 423,426-27Muestracompleja, 133estratificada, 133intencionada, 133simple, 133sistemática, 133Muestreo(s), 132-36de conglomerados, 133de conveniencia, 132-33NNavegaciónintuitiva, 465Web, 355-56, 465-68Nivelde confianza en el muestreo,134-35de sockets seguros (SSL), 544Normalizacióndiagramas E-R, 421-22ejemplos, 414-17formularios, 417-21pasos, 413-14y desnormalización, 426-28Notación algebraica, 231-32Número de identificación (ID),230, 234, 237, 299OObjetivos/metas, 85-86, 104Objetos, 309-10Observación, 142-48estructurada del entorno(STROBE), 142-49, 152, 154OCLC (centro de bibliotecas decómputo en línea), 495OCR (reconocimiento óptico decaracteres), 496OLAP (procesamiento analítico enlínea), 429OmniGraffle, 35Omniplan, 83Oportunidades de consultoríaadministración de equipos, 85almacén corporativo de datos, 430análisis de costos y beneficios, 78análisis OO, 284, 313, 315árbol de decisiones, 272aseguramiento de calidad,implementación, 518capacitación, 538codificación, 492, 494consultas de bases de datos, 472contratar ayuda de comercioelectrónico, 7copias de archivos, 44cuestionarios, 120, 121decisión estructurada, 263desarrollo de un sitio decomercio electrónico, 26DFD, 216-17diccionario de datos, 240diseño de bases de datos, 404diseño de formularios, 377, 379documentación, 524elegir software, 70, 73entrada, 390entrevistas, 108, 110, 113especificaciones de procesos,264evaluación, 548HCI, 466interfaces, 454, 456, 457investigación, 137muestreo, 135problemas de comunicación, 46prototipos, 159, 160, 161, 162prueba, 528prueba de validez, 504retroalimentación, 461salida, 335salida para, 339, 342, 348, 356solución de problemas, 58solución de sistemas, 546STROBE, 145tabla de decisiones, 269validación de la entrada, 500Orientado a objetos (OO), análisisy diseñoacerca de, 17-19, 281clases, 282-83diagramas de clases, 297-300diagramas de secuencia, 287,288f, 294-96, 300-09ejercicios y problemas, 318-19,320-27herencia, 283-84modelado de casos de uso, 287-90objeto, definición, 282RAD como, 163-66y tarjetas CRC, 284-86PPáginas Webdinámicas, 383, 386, 395tridimensionales, 385-87Pancartas, 141Pantallasensible al tacto, 457-58para la salida, 332-33Papel para la salida, 343Paquetes, 311-12Paréntesis (()), 232, 298Particionamiento, 206-07, 213-17Pata de cuervo, símbolo, 30-31,405-06Patrones, identificar, 431Pegajosidad de los sitios Web, 353Pensamiento en objetos,instrucciones, 284-86PeopleSoft, 162Periodo de retribución, 75, 77Persistencia, capa de, 302PERT, diagramas, 80-82, 97, 101PKI (infraestructura de clavespúblicas), 544Planeaciónde recuperación de desastres,544-46de recursos empresariales(ERP), sistemas de, 5, 28-29de requerimientos de materiales(MRP), 28y control administrativo, 43-44Plantillas, 352Plumilla, 457Polimorfismo, 307Precisión, 270, 506-08Predisposición en la salida, 340-44Preguntas abiertasacerca de, 105-06anticiparse a la respuesta, 115ejercicios, 125ilustración, 116f, 117fPreguntasbipolares, 106-07cerradas, 106-07, 115, 117f, 125frecuentes (FAQ), 353www.xlibros.com
ÍNDICE 571Presentación, capa de, 302Primera forma normal (1NF),417-18Privacidad y comercio electrónico,544Procesamiento analítico en línea(OLAP), 429Procesopadre, 198, 199fprimitivo, 198Programación en pareja, 171, 175-76Programadores, programaciónderechos, 181lenguaje, 6productividad, 316Vea también Orientado a objetos(OO), análisis y diseñoy retroalimentación, 167Pronóstico, 72Propuesta de sistemas, 10-11,88-91Protección antivirus, 543Prototiposacerca de, 155-56caso de la CPU, 186-91como alternativa al SDLC, 157-58de características seleccionadas,156f, 157de parches, 156desarrollo, 158-60ejercicios y problemas, 183-85no operacional, 156f, 157primero de una serie, 156f, 157rol de los usuarios, 159-63tipos, 156-57Vea también Modelado ágilventajas y desventajas, 160-61y software COTS, 161-62Proveedor de servicios deaplicación (ASP), 68Prueba, 169, 526-28de cadena, 527de sistemas completa, 527-28de vínculos, 527Puedeserun, 307f, 308Puesta en producción, 17QQBE (consulta mediante ejemplo),471-73QuickBooks Pro, 73QWERTY, teclados, 449RRango, prueba, 501Reconocimientode caracteres de tinta magnética(MICR), 497óptico de caracteres (OCR), 496Recopilación de informacióncaso de la CPU, 154diseño de aplicación conjunta(JAD), 111-14ejercicios, problemas, 124-30,150-52investigación, 136-41muestreo, 131-36observación, 141-48Vea también Entrevistas;CuestionariosRecorridos estructurados, 517-18,519fRectángulo, símbolocon extremo abierto, 194f, 195en diagramas de clases, 297en diagramas E-R, 407fpreguntas abiertas, 194f, 195usos, 194-95Recursosen la metodología ágil, 176virtualizados, 531Red, redesde área amplia (WAN), 531de área de almacenamiento(SAN), 545de área local (LAN), 531de área local inalámbricas(WLAN), 5de fidelidad inalámbrica(Wi-Fi), 5, 339-40, 531Redundancia de datos, 425Registrode longitud variable, 409para investigación, 136, 138fRegistros Web, 357Regla de los tres clic, 356, 378Relacionesde auto unión, 407en entidades, 405-08Renta de hardware, 67Replicación remota asíncrona, 545Repositorio, 294de datos, 229-38Respuesta, 205Resta, signo de (–), 297Restricciones de integridad, 424-25Resumen ejecutivo, 89Retraso, procesamiento, 463-64Retroalimentaciónacerca de, 461como control del sistema, 25como valor de metodología ágil,167después de los prototipos, 158diseñar, 464-65tipos, 462-64y precisión, 506-07RFID (identificación por radiofrecuencia), 498-99Riesgos de la innovación, 179-81Rollover, menús, 466Ropa, 146RSS, fuentes, 335Ruby on Rails, lenguaje, 6SSaaS (software como un servicio),531-33Salidaanimada, 333-34aseguramiento de calidad,implementación, 526como audio, 333-34como CD-ROM, DVD, 334como tecnología push/pull,336como video, 333-34comparación entre interna yexterna, 331contenido y método, 330-40definición, 329ejercicios y problemas, 361-65electrónica, 334-36elegir tecnología, 336-40flujos de datos, 260impresa, diseño, 341, 343impresoras, 331-32mensajes, 309objetivos de diseño, 329-30pantallas, 332-33, 344-47predisposición, 340-44producción y XML, 357-60Vea también Entraday las fuentes RSS, 335SAN (red de área dealmacenamiento), 545Scrum (melé), 174-75Secuencias como patrones, 431Segunda forma normal (2NF), 419Seguridadacerca de, 542conductual, 543física, 542lógica, 542-43y comercio electrónico, 543-44y partición DFD, 207, 215Seis Sigma, 516, 517fSemana de trabajo de 40 horas,171, 176, 179Sensibilidad perceptual, 450SET (transacción electrónicasegura), 544Símbolode flecha, 194, 295-96utilizados en STROBE, 147-48Simpleza en el modelado ágil, 167Sin normalizar, 413-23Sistemasde administración de contenido(CMS), 356-357de automatización de oficinas(OAS), 2-3de informaciónanálisis y diseño orientado aobjetos (OO), 17-19ciclo de vida del desarrollode sistemas, 8-13elegir, 19enfoque de utilidad para laevaluación, 546-48integrar tecnologías para, 4-5necesidades de análisis ydiseño, 6rol de los analistas, 6-8tipos, 2-4de información administrativa(MIS), 3de procesamiento detransacciones (TPS), 2de soportede decisiones (DSS), 3de decisiones en grupo(GDSS), 3-4para ejecutivos (ESS), 4de trabajo de conocimiento, 3distribuidoscomputación en nube, 531-33modelado de redes, 533-35tecnología cliente-servidor,529-31ventajas y desventajas,535-36expertos, 3organizacionalescomprensión, 24cultura, 45-46diagramas de estado, 309-11flujo de datos a nivel decontexto, 29-30interrelación,interdependencia, 25-26modelado de casos, 35-43perspectiva, 27-28virtuales, 26-27y el modelo de entidad-relación, 30-35y ERP, 28-29y los niveles administrativos,43-45Web, 4-5Sitios Webcorporativos, 141diseñar, 348-56mantener, 356-57máscaras (skins), 390particionar, 213-17promoción, 356vocabulario para, 349fSOA. Vea Arquitectura orientada aservicios (SOA)Sobrecarga de informaciónhumana, 179Softwarecomo un servicio (SaaS), 531-33ejercicios y problemas, 256-57elegir, 68-72externalizar, 71foros, 464-65para el diseño de formularios, 375personalizado, 68-69registros y elementos, 252-53Vea también Software,comercial de venta en canalesconvencionales (COTS);Entrada, MAC, atractivo de;SalidaSoftwarecomercial de venta en canalesconvencionales (COTS)crear prototipos, 161-62www.xlibros.com
572 ÍNDICEelegir, 68-72evaluar para comprar, 68-71para sitios Web, 354soporte, 539de código fuente abierto (OSS), 5Solución de problemas, 57-61Sondas, 107Soportado por computadorasistemas de trabajo colaborativo(CSCWS), 4Soporte del distribuidor, 67-68,71-72Sprint, 175SQL (lenguaje de consultaestructurado), 473-74SSL (nivel de sockets seguros),544STROBE. Vea Observaciónestructurada del entorno(STROBE)Subculturas organizacionales,45-46, 49Suma (+), signo de, 231, 246,298-99, 383Supervisión de los empleados, 543Survey Monkey, 122TTablas, 89-90, 413archivos de, 410de decisionesacerca de, 266-67comparación con árboles dedecisiones, españolestructurado, 273desarrollo, 267-68ejemplo, 269-70, 280fintegridad y precisión,270-71de respuestas a eventos, 382-83,384fdinámicas, 444-46Tableau Software, 446-48Tablerosde anuncios, 141de control, 346-47Tablet PC, 457Táctil y HCI, 448-49Taller, fase de RAD, 164TAM (modelo de aceptación detecnología), 443-44Tareas y HCI, 442-43TarjetasCRC, 284-86de crédito, prueba, 503-04de proximidad, 498Teclados, 449, 496Técnicas de revisión y evaluaciónde programas (PERT), 80-82Tecnologíacliente-servidor, 529-31pull, 5, 336push, 336Tendenciascomo patrón, 431pronóstico, 72Tercera forma normal (3NF),420-21Tiempo de interfaz, 177-78Tiempo/sincronizaciónahorrar, 113como problema definido, 60-63de inactividad, 80-81, 92desencadenadores, 41en DFD física, 205en diagramas de secuencia, 295estimación, 79estrategias de eficiencia, 177-79metodología ágil, 169para crear prototipos, 159riesgos inherentes, 180y entrevistas, 104-05, 108y eventos diferidos, 310y fracaso, 88fy la salida, 330y partición DFD, 206-07Tiposde archivos para las bases dedatos, 410-11de datos, 235fTodo/parte, relaciones, 305-06Totales en formulario, 372TQM. Vea Administración decalidad total (TQM)Transacción electrónica segura(SET), 544Triturar documentos, 543Tupla en bases de datos, 413UUbicaciónde oficina, 143-44del escritorio, 144UML. Vea Lenguaje unificado demodelado (UML)Unicode, 490Unión Europea, convenciones deTI, 441, 459, 543Uno a muchos (1:M), relaciones,405-06, 422-23Uno a uno (1:1), relaciones,405-06, 426-27Usuarioscapacitación, 536-39consultar, 41de tecnología de salida,336-38diseñar diálogo, 458-61diseñar salida, 330entrevistas, 59, 100-101estilos cognoscitivos, 444-48historias, 172-74, 175finterfaces, 160, 451-58planeación de recuperación dedesastres, 545precisión, 506-07reacciones, 181retroalimentación, 461-65seguridad y privacidad, 543-44Vea también Interacciónhumano-computadora (HCI)y evaluación, 546y JAD, 111y partición DFD, 206y prototipos, 157-64y sistemas, 3-14y sobrecarga de información,179Utilidadde actualización, 547-78de lugar, 547de objetivo, 548de posesión, 547de tiempo, 547VValidacióncódigos, 493como elemento de datos, 236de datos de entrada,transacciones, 500-04de transacciones de entrada, 500proceso, 505-06Valor, valoresen el modelado ágil, 167en la metodología ágil, 176inválidos, probar, 501Verificaciones de referenciascruzadas, 501Viabilidaddeterminar, 62-63económica, 63operacional, 63técnica, 63Vínculos jerárquicos, 466Visible Analyst (VA)caso de la CPU, 51-55, 100-01ejercicio, 252-58, 279-80para crear clases, 299usos, 14Visión y HCI, 448, 449Vista de usuario, 411-12Visual Page, 355fVM Fusion, 12Voz, entrada de, 450WWebtrends, 548Widgets, 347WYSIWYG, 343XXML. Vea Lenguaje de marcadoextensible (XML)www.xlibros.com
1 SISTEMAS, ROLES Y METODOLOGÍAS DE DESARROLLO1.1 Contratación saludable: se busca ayuda para el comercioelectrónico 72 COMPRENSIÓN Y MODELADO DE LOS SISTEMAS ORGANIZACIONALES2.1 La E de la vitamina E significa E-commerce (comercio electrónico) 262.2 Donde hay carbón hay una copia 442.3 El poder de la pirámide 463 ADMINISTRACIÓN DE PROYECTOS3.1 El sonido más dulce que haya sorbido 583.2 Veni, Vidi, Vendi o Vine, vi y vendí 703.3 Vamos a ver a los magos 733.4 Comida para pensar 783.5 Cuidar los objetivos 854 RECOPILACIÓN DE INFORMACIÓN: MÉTODOS INTERACTIVOS4.1 Fortalezca sus tipos de preguntas 1084.2 Un vistazo a la superficie 1104.3 Analista de sistemas, supongo 1134.4 El cuestionario insoportable 1204.5 Orden en las cortes 1215 RECOPILACIÓN DE INFORMACIÓN: MÉTODOS DISCRETOS5.1 A la caza de una muestra 1355.2 Una rosa con otro nombre, o Calidad mejor que cantidad 1375.3 No confíes en su autoestima o no todo se refleja en un espejo 1456 MODELADO ÁGIL Y PROTOTIPOS6.1 Los prototipos, ¿son los reyes? 1596.2 Despejando el camino para los vínculos con los clientes 1606.3 Incubar un pez 1616.4 Este prototipo está todo mojado 1627 USO DE DIAGRAMAS DE FLUJO DE DATOS7.1 No hay negocio como el negocio de los flujos 2168 ANÁLISIS DE SISTEMAS MEDIANTE EL USO DE DICCIONARIOS DE DATOS8.1 ¿Deseas triunfar en el teatro? ¡Mejora tu dicción(ario)! 2409 ESPECIFICACIONES DE LOS PROCESOS Y DECISIONES ESTRUCTURADAS9.1 Kit Chen Kaboodle, Inc. 2639.2 Estructura para amasar 2649.3 Ahorrar un centavo en Citron Car Rental 2699.4 Un árbol gratis 27210 ANÁLISIS Y DISEÑO ORIENTADOS A OBJETOS MEDIANTE EL USO DE UML10.1 Alrededor del mundo en 80 objetos 2841 SISTEMAS ROLES Y METODOLOGÍAS DE DESARROLLOÍOPORTUNIDADES DE CONSULTORÍAwww.xlibros.com
10.2 Reciclando el entorno de programación 28410.3 Desarrollo de un sistema fino cuyo plazo de entrega se venció hacemucho: uso del análisis orientado a objetos para el Sistema de labiblioteca pública Ruminski 31310.4 C-Shore++ 31511 DISEÑO DE UNA SALIDA EFECTIVA11.1 ¿Tu jaula o la mía? 33511.2 Una vía correcta, una equivocada y una vía de metro 33911.3 ¿Debería prohibirse esta gráfica? 34211.4 ¿Es tu trabajo aburrido? 34811.5 Un día en el campo 35612 DISEÑO DE UNA ENTRADA EFECTIVA12.1 Este formulario puede ser dañino para su salud 37712.2 Tener todo junto no siempre es lo mejor 37912.3 Juego de máscaras 39013 DISEÑO DE BASES DE DATOS13.1 Enganche su carrito de limpieza a una estrella 40413.2 Almacenamiento de minerales para la salud, minería de datos 43013.3 Pérdida de prospectos 43114 INTERACCIÓN HUMANO-COMPUTADORA14.1 El espíritu escolar viene en varias tallas 45014.2 Preferiría hacerlo yo mismo 45414.3 No me desaceleren 45614.4 Ésa no es una bombilla 45714.5 En espera de ser alimentado 46114.6 Al correr en un maratón, es conveniente saber hacia dóndese dirige 46614.7 ¡Eh, mírame! (Repetición) 47215 DISEÑO DE PROCEDIMIENTOS PRECISOS DE ENTRADA DE DATOS15.1 Aquí parece una jungla 49215.2 Pescar un código de verano 49415.3 Entrar o no entrar: esa es la cuestión 49915.4 ¿Validan el estacionamiento? 50416 ASEGURAMIENTO DE CALIDAD E IMPLEMENTACIÓN16.1 La calidad de MIS no se pone a prueba 51816.2 Escribir está bien 52416.3 Estudiando de manera intensiva para su prueba de sistemas 52816.4 Puede guiar un pez al agua... pero no puede hacer que la tome 53816.5 El dulce aroma del éxito 54616.6 Limpiando el nuevo sistema 548www.xlibros.com

Anotaciones